摘要: 1. 简述 主要的场合有四类:初始化对象成员,初始化基类的成员,初始化const成员,初始化引用成员。对于const成员和引用成员,比较简单,这两种变量都要求初始化后不能赋值,因此,只能在成员初始化列表中进行初始化,其他地方不行。本文主要介绍初始化对象成员和初始化基类成员这两种情况。 2. 初始化对象成员 具体分为两种情况:第一,该对象具有“无参数的构造函数”,使用初始化成员列表,有可能提升性能;第二,该对象只有“有参数的构造函数”,这种情况,必须使用初始化成员列表。#include<iostream>usingnamespacestd;classAK_Zero_Parameter 阅读全文
posted @ 2011-08-10 11:41 xiaodongrush 阅读(1143) 评论(1) 推荐(2)
摘要: 1. 简述 类的成员变量多种多样,比如:int a, const int a, int &a, static inta, static const int a, statice int& a。前面三个分别是普通变量、const变量和引用变量,后面的三个是前面三个分别加上了static。本文主要分析这六种变量初始化的位置。2. 说明 对于int、const int和int&,这三个类型相对于static来说,每个对象都有一份,因此每个对象都要构造一次。其中,int的初始化不受限制,哪里都行。const int和int &要求在定义的时候初始化,因此,默认要求只能在 阅读全文
posted @ 2011-08-10 07:56 xiaodongrush 阅读(1884) 评论(0) 推荐(0)
摘要: 1. 下面程序输出是多少?UnionU {charstr[2];shortintnum;};intmain(){Uu;u.str[0]=10;u.str[1]=1;cout<<u.num<<endl;system("PAUSE");return0;} 结果为266。对于整数类型,都是低字节存低位,高字节存高位,因此低位是10,高位是1,结果=1*256+10=266。2. 下面不同变量之间地址大小关系classTest{public:intm;intn;};intmain(){inta;char b;intc[10];Testt;cout<&l 阅读全文
posted @ 2011-08-10 00:03 xiaodongrush 阅读(1995) 评论(0) 推荐(0)