#include<iostream>
using namespace std;
class xiuzhenjie{
public:// 构造函数
xiuzhenjie(int a, int b){
this->alter = a;
this->geschlecht =b;
}
// 构造函数
xiuzhenjie(int a){
this->alter = a;
}
public:
int alter;
int geschlecht;
};
int main()
{
xiuzhenjie tianyuanyu(13,1); // 1
xiuzhenjie* daluotianyu = new xiuzhenjie(14,1);
xiuzhenjie* daxiahuangchao = new xiuzhenjie(13);
int talent1 = 0;
int talent2 = 0;
talent1 = (daluotianyu->alter)*(daluotianyu->geschlecht);
talent2 = (tianyuanyu->alter)*(tianyuanyu->geschlecht);
cout<<"此人的资质:"<< talent1 << endl;
cout<<"此人的资质:"<< talent2 << endl;
return 0;
}
xiuzhenjie tianyuanyu(13,1); // 1
什么样的构造器才能实现这样直接赋值?
引用类型初始化,好像必须new去分配空间,
额,你所说只是构造的形式,你有相应的构造就可以选择初始化时的形式,至于赋值,对象赋值得重载运算符,初始化时即使是写成赋值形式,调用的依然是拷贝构造
xiuzhenjie(int a, int b){
this->alter = a;
this->geschlecht =b;
}
这个函数是你写的构造函数,有这个,
就能,直接使用下面语句赋值呀
xiuzhenjie tianyuanyu(13,1); // 1