あなたは後者を見たことがありC++では、static_cast <double>(a)とdouble(a)の違いは何ですか?
int a;
// a gets some value
double pi = static_cast<double>(a)/3;
と
int a;
// a gets some value
double pi = double(a)/3;
の違いは何ですか?私にはStroustrupによって書かれたいくつかのスニペットで見ましたが、私は参照を見つけることができません。
'a'が' int'のとき、 'static_cast(a)'と '(double)a'と' double(a) 'はすべて意味的に同じです。 'a'が他の非スカラー型、' const'や 'volatile'などのときに違いが現れます。 –
ildjarn
@ildjarnとパフォーマンスの観点から? –
同一であることを意味します。違いはありません。 – ildjarn