내 조각 :표준 : : 벡터의와 push_back()의 원인이 이상한 컴파일 타임 오류 메시지 코드의
void
RMWavefrontFileImporter::loadVertexIntoVector(
const std::vector<std:string> lineElements,
std::vector<const RM3DVertex>* vertices)
{
assert(vertices);
std::unique_ptr<const RM3DVertex> verticeRef = verticeWithElements(lineElements);
const RM3DVertex* vertex = vertexRef.get();
assert(vertex);
vertices->push_back(*vertex);
}
내가지고있어 오류 메시지 :
유형의 매개 변수를 초기화 할 수 없습니다 ' void * '와 왼쪽에'const RM3DVertice * '
나는이 문제를 보지 못했습니다. 내가 놓친 게 분명해?
'vertices-> push_back (vertice)'이 아니어야합니까? 또한 unique_ptr을 해제해야 할 수도 있습니다 ... – Pubby
@Pubby 아니요, vertices는'std :: vector '로 선언되며 두 번째 부분에도 no라고 말하고 싶습니다. unique_ptr은 사본을 벡터로 푸시하기위한 용도로만 힙 할당 객체를 보유하고있는 것으로 보입니다. 해제하면 메모리가 누출됩니다. –
Borgleader
오류 라인은 :'vertices-> push_back (* vertice);'? 컴파일러가이 줄에 대해 불평하고 있습니까? – antonte