크로스 플랫폼보기로 Windows 코드를 다시 작성해야합니다. 다음은 예입니다 코드표준에서 unordered_set
std::unordered_set<Type>::iterator it = ...;
it._Ptr->_Myval->...
Everywere가 반복자에 _Ptr
회원이하지만 문서에서 찾을 수 없습니다. Visual Studio (stl의 구현)와 함께 작동한다고 생각합니다. 어떤 아이디어가 그것을 대체하는 방법? 그리고 _Myval
은 무엇입니까?
UPD :
for(std::unordered_set<QuadTreeOccupant*>::iterator it = ...)
it->aabb;
class QuadTreeOccupant
{
public:
AABB aabb;
};
그리고 라인 it->aabb
에서 오류 : VC의 구현에 특정 unordered_map
의
error: request for member ‘aabb’ in ‘* it.std::__detail::_Hashtable_iterator<_Value, __constant_iterators, __cache>::operator-> with _Value = qdt::QuadTreeOccupant*, bool __constant_iterators = true, bool _cache = false, std::_detail::_Hashtable_iterator<_Value, __constant_iterators, __cache>::pointer = qdt::QuadTreeOccupant* const*’, which is of non-class type ‘qdt::QuadTreeOccupant* const’
이 업데이트를 볼 수 있습니다, 제발? – Ockonal
@Ockonal :'(* it) -> aabb','hash_map'에 * 포인터 *가 포함되어 있으므로 역 참조도 필요합니다. – Xeo