std::Vector에서 원시 데이터 포인터 검색
문제:
다음을 추구합니다. void 포인터를 허용하는 함수 내에서 std::벡터를 char 배열로 사용합니다. 벡터를 직접 전달하거나 시작() 반복자를 통해 벡터를 전달하려고 하면 잘못된 데이터 또는 컴파일러 경고가 발생합니다.
해결책:
표준의 원시 데이터에 액세스하려면 ::벡터, 다음 방법 중 하나를 사용하여 초기 요소의 주소를 얻습니다.
C 11 이상에서는 추가 옵션을 사용할 수 있습니다.
예:
void process_data(const void *data); std::vector<char> something; // Cast the raw data pointer to char* for compatibility. char *data_ptr = reinterpret_cast<char*>(something.data()); process_data(data_ptr);
위 내용은 std::Vector에서 원시 데이터 포인터를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!