『C++Primer』読書ノート(4)
1.条件演算子の使用は、普段はあまり使われていません...そのため、論理がよく分からないので、記録して印象を深めます.
2.sizeof演算子
参照タイプについては、被参照オブジェクトのサイズとして算出される
ポインタについては、ポインタの大きさが算出されます.4
intは4,charは1,stringは28
配列の場合、sizeof(配列名)は配列全体のサイズ(バイト数)を得ることができます.
32 32 4 32 4 1 28
3.強制型変換
static_cast,const_cast
しかし、できるだけタイプ変換を少なくして、間違いやすいです.
const_についてcastの使用方法はcosnt(element)で、1つのタイプの変数をconst修飾子付き変数に変換します.
この変換は関数で使用できます.たとえばconstタイプしか受け入れられない関数では、この変換を使用してパラメータをconstタイプに変換できます.
int _tmain(int argc, _TCHAR* argv[])
{
int a = 1;
int b = 2;
int c = 0;
c = a > b ? a : b;
cout<<c<<endl;
getchar();
}
c = a > b ? a:bはa>bを先に判断し、真であればcを取得する.左の値、そうでない場合は右の値をとります.2.sizeof演算子
参照タイプについては、被参照オブジェクトのサイズとして算出される
ポインタについては、ポインタの大きさが算出されます.4
intは4,charは1,stringは28
配列の場合、sizeof(配列名)は配列全体のサイズ(バイト数)を得ることができます.
int _tmain(int argc, _TCHAR* argv[])
{
A a;
A& ra = a;
A* pa = new A();
int num;
char c;
string s;
cout<<sizeof(a)<<endl;
cout<<sizeof(ra)<<endl;
cout<<sizeof(pa)<<endl;
cout<<sizeof(*pa)<<endl;
cout<<sizeof(num)<<endl;
cout<<sizeof(c)<<endl;
cout<<sizeof(s)<<endl;
getchar();
}
結果:32 32 4 32 4 1 28
3.強制型変換
static_cast,const_cast
しかし、できるだけタイプ変換を少なくして、間違いやすいです.
const_についてcastの使用方法はcosnt
この変換は関数で使用できます.たとえばconstタイプしか受け入れられない関数では、この変換を使用してパラメータをconstタイプに変換できます.