1.类名 对象名
默认调用“对象名()”这个构造函数,在栈内存中存在对象名,在堆内存中存在实际对象;
2.类名 对象名(一个或以上个参数)
默认调用相应的构造函数,在栈内存中存在对象名,在堆内存中也是存在实际对象的;
3.类名 对象名()
不调用任何构造函数创建对象,仅在栈内在中存在对象名,在堆内存中并不存在实际的对象;
所以就是0+1+3+0+0+1=5
A选项:虽然两个数组是不同的,但关键点是数组的地址不可修改,所以错误
B选项:两边的元素类型不一样,左边是指针,右边是int,当然不可以。
B选项题意应该是想把指针数组里的第一个指针(数组名代表首元素名)指向a[0],改为*p=&a[0]即可实现。
C选项:把a的首元素地址赋给了p数组,同样犯了A的错误。
D选项:指针数组的第一个指针指向int数组的第一个值