问一个问题
#include<iostream.h>class obj{
int val;
public:
obj(){
val=0;
cout<<val<<'\t'<<"调用obj缺省参数的构造函数"<<endl;}
obj(int i){
val=i;
cout<<val<<'\t'<<"调用obj构造函数"<<endl;}
~obj()
{cout<<"调用obj析构函数"<<endl;}
};
class con{
obj one,two;
int data;
public:
con(){
data=0;
cout<<data<<'\t'<<"调用con缺省参数的构造函数"<<endl;}
con(int i,int j,int k):two(i+j),one(k) {
data=i;cout<<data<<'\t'<<"调用con的构造函数"<<endl;}
~con(){
cout<<"调用con析构函数"<<endl;}
};
void main(void)
{con c1();
con c(100,200,400);
}
我的con c1()应该是缺省参数的构造函数,可是执行的结果好像是显示这句话没有被执行,为什么阿?