Как получить доступ к блоку памяти, который выделен std :: vector? - PullRequest
5 голосов
/ 26 марта 2011

Многие люди рекомендуют векторный класс для массива переменной длины.И я должен передать указатель на блок памяти в GL.Как я могу получить доступ к указателю на блок памяти, выделенный std::vector?

Ответы [ 3 ]

11 голосов
/ 26 марта 2011

Использовать адрес первого элемента.Если ваш вектор v, тогда &v[0] будет работать.

4 голосов
/ 26 марта 2011
ContainerType* pData  = &vec.front();
0 голосов
/ 26 марта 2011
std::vector<int> v(1000);

int *p = &v[0];

//treat p as if it points to an array of 1000 ints
//all 1000 ints default-initialized with 0!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...