は私が憧れるこれが指定され、変更しないでくださいキャストベクトル<int>とベクトル<long>のサイズが同じ場合は?
Void blarf(std::vector<long>&);
のベクトルへの参照を取る機能があります。 xyz.cppに深くblarf()
vector
int
のSを供給しようとする試みである:私の場合は
std::vector<int> gooddata;
. . .
blarf(gooddata);
とこのソフトウェアのすべての場合、int
とlong
は同じサイズです。もちろん、gooddata
の定義を変更することはできません。
どのようなタイプキャストが適切ですか?私はdynamic_cast
を試しましたが、それは多態的なクラス変換のためだけです。 static_cast
もどちらも問題ありません。私はC + +型のキャストで天才だ。
イー、これは醜いフォーマットです。家に帰るときにそれを修正します。 – DarenW
未定義の振る舞いをする危険がある場合は、 'reinterpret_cast'を使用することができます。 –
あなたのコードがそれを買う余裕がある場合、テンプレートを考慮してください: 'template void blarf(std :: vector &);' –