C++11 c++;为什么;A()&引用;不会调用构造函数
为什么是A();不会调用构造函数吗? 为什么sizeof(C)是1C++11 c++;为什么;A()&引用;不会调用构造函数,c++11,C++11,为什么是A();不会调用构造函数吗? 为什么sizeof(C)是1 C类 { 公众: C(){ 库特 它不会创建一个名为a的C实例,该实例声明一个名为a的函数,该函数不带参数并返回一个C 要获得您想要的,您有两个主要选择: C a; C a{}; //c++11 < C++ >代码> >(代码) 1代码>代码>,因为C++中的每个对象至少占用一个字节,即使没有任何意义的存储。如果你有一个数组“ >代码>,请考虑一下,如果 siZeof(C)< /C> > 0 > /代码>, CyLab[0
C类
{
公众:
C(){
库特
它不会创建一个名为a
的C
实例,该实例声明一个名为a
的函数,该函数不带参数并返回一个C
要获得您想要的,您有两个主要选择:
C a;
C a{}; //c++11
< C++ >代码> >(代码)<代码> 1代码>代码>,因为C++中的每个对象至少占用一个字节,即使没有任何意义的存储。如果你有一个数组“<代码> >代码>,请考虑一下,如果<代码> siZeof(C)< /C> > <代码> 0 > /代码>,<代码> CyLab[0 ] < /C> >将与<代码> CyLaS[[ 10 ] ]相同地址。“C++”不允许两个不同的对象具有相同的地址。1。如果要在创建新对象时调用构造函数,
代码应该是这样的:
C a
C*a=新的C()
2.因为任何对象在内存中的地址都不应与任何其他变量相同
因此,如果类或结构没有变量或函数,那么sizeof(class)=1。。什么A
?我只看到C
。对于第二个问题,他问为什么没有成员变量时它的大小是1
。而不是它是否有。是的,我会编辑它
C a();
C a;
C a{}; //c++11