는 I 걷고 이것은 주어진 수정되지 않아야주조 벡터 <int>을 같은 크기 일 때 벡터 <long>에 전송 하시겠습니까?
Void blarf(std::vector<long>&);
의 벡터에 대한 참조를 취하는 기능을 갖는다. xyz.cpp에 깊은 blarf()
vector
int
의의를 공급하는 시도이다 : 내 경우
std::vector<int> gooddata;
. . .
blarf(gooddata);
이 소프트웨어에 대한 모든 경우, int
및 long
는 같은 크기입니다. 물론 gooddata
의 정의도 변경할 수 없습니다.
어떤 유형 변환이 적절한가요? 나는 dynamic_cast
을 시도했지만 이것은 다형 클래스 변환에만 해당됩니다. static_cast
도 마찬가지입니다. 나는 C++ 타입 캐스트에서 천재가 아니다.
유,이 추한 형식입니다. 집에 갈 때 고칠 것입니다. – DarenW
정의되지 않은 동작의 위험을 감수하고자한다면'reinterpret_cast'를 사용할 수 있습니다. –
여러분의 코드가 그것을 감당할 수 있다면 템플릿을 고려해보십시오 :'template void blarf (std :: vector &);' –