- static和全局变量属于全局/静态区,最后释放
- static属于类域,不属于对象的sizeof范围
- 4字节对齐,为4的倍数即可
- 神马成员都没有的类,或者只有成员函数 ,sizeof(对象)为1
- int【10】() 初始化为0
- 指针类型为int,加1,为4个字节
-
正确:方法重写的返回值类型必须相同或相容。(或是其子类)
-
第三个对象是这样构造的MyClass obj3 = obj1;这里会调用拷贝构造函数,如果是obj3已经构造完成,MyClass obj3;obj3=obj,则会调用拷贝构造函数
-
以上全都不正确
-
stack的pop为什么不返回值,为了安全?一般来说更改函数不应该以传值的方式返回对象,如果进程突然故障,。。。?
-
字符串属于字符类型的派生类型(char数组)。用于字符串一定要以空字符(‘\0’)结束,故所有的字符串里面一定有一个空字符。当然空字符串(“”)也不例 外。
-
char *str = NULL; 表明该变量不指向任何有效的内存区域,避免野指针。
-
如果用户没有提供任何构造函数,除了某些情况之外,C++ 将提供一个默认构造函数。C++ 隐式提供的默认构造函数没有初始化列表,并且函数体为空。换句话说,它什么也不干。(当然基类、类成员的构造函数还是会被调用的)当然也不会把成员置为0。
-
但是如果类的成员对象是内置类型,默认构造函数会不会对其初始化取决于对象定义的位置,如果对象是在全局作用域内定义的,则会初始化为0,如果定义在局部作用域,则不会初始化,要初始化只能自己定义构造函数
如果类的成员对象是类,则无论在什么地方定义,也无论有没有定义自己的构造函数,系统都会将其初始化,如果自己初始化了,则以自己初始化的为准,如果自己没有初始化,则初始化为空类型。也就是说static成员和全局成员,系统都会初始化,而其他成员,则默认构造函数不会初始化,例如int成员, -
工作准备
最新推荐文章于 2022-02-11 19:50:42 发布