2014-01-14 6 views
-7
vector<vector<double> >a(3,vector<double>(4)); 
double *p = a[0]; 

왜 잘못 되었나요? a[0]a의 첫 번째 차원 주소가 아닙니까? 여기 찾는C++ 벡터를 C 스타일 포인터로 변환

vector<vector<double> >a(3,vector<double>(4)); 

+3

'a [0] .data()'? –

+0

예, C++ 11 지원 – tenos

+5

질문을 잊어 버렸습니다 Skippy –

답변

4

가 그렇게 A [0] vector<double>. 벡터를 입력했다 vector<double>. 형의 3 개 요소를 갖는 벡터로서 정의하면, 사용자 정의 된 타입이다. 그것은 포인터가 아닙니다.

+1

무엇이 잘못 되었습니까? OP가 그들이 원하는 것을 어떻게 할 수 있는지에 대해서는 설명하지 않았습니다. – thecoshman

+0

@thecoshman : OP가 그가 무엇을하고 싶은지 우리에게 말하지 않았을 때 다소 어려웠습니다. 이번에는 블라드가 붉은 광장에서 똑바로 쳤다고 말할 수 있습니다. –