C++相談室 part98
■ このスレッドは過去ログ倉庫に格納されています
0545デフォルトの名無しさん
2012/11/28(水) 21:53:34.64typedef double T;
std::complex<T> c(1.0,1.0);
std::array<T,2> a;
std::copy_n(reinterpret_cast<T(&)[2]>(c),2,&a[0]);
std::copy_n(&a[0],2,reinterpret_cast<T(&)[2]>(c));
これで大丈夫なのか?
対称に書けてよろしいけど、
std::vector<T> c;
とか
std::valarray<T> c;
(aじゃないよ!)に対して同じコードではコンパイルは通るけど実行時にぐちゃぐちゃ(可変長だから?)。
結局reinterpret_cast<T*>(...)が万能ってことだろうか・・・。
■ このスレッドは過去ログ倉庫に格納されています