클래스 변수로 Eigen::Matrix4d
을 포함하는 클래스 ClusterNode
이 있습니다. 나는 또한 numNodes()
이라는 함수를 가지고있어서 ClusterNode
의 총 수를 알려주고 배열,리스트 또는 벡터로 그들을 수집 할 수있다.정렬 된 데이터 유형 Eigen :: Matrix에 대한 배열 또는 벡터 선언
그러나 Eigen::Matrix4d
내가 시도 배열을 사용하여 I는이 질문에 대한 대안으로서 error C2719: '_Val': formal parameter with __declspec(align('16')) won't be aligned?
에 응답 당으로서 std::vector<ClusterNode>
이 타입의 객체를 저장할 수 없음을 의미하는 정렬된다. 함수의 반환 값이 상수로 간주되지 않기 때문에
그러나, 나는
const int n = numNodes();
ClusterNode array [n];
할 수 없습니다.
다른 옵션에는 어떤 것이 있습니까?
'ClusterNode * array = new ClusterNode [n]; ' –
그 링크 된 질문에서 답을 읽었습니까?'std :: vector'는 더 이상 요소 타입을 값으로 전달하지 않으므로 더 이상 함수 매개 변수의 오버런이 문제되지 않습니다. –
@Ben 컴파일러 오류가 계속 발생하기 때문에 오래된 컴파일러 버전이 있어야합니다. – Cecilia