类的学习
4. 关于this指针的一个精典回答:
当你进入一个房子后,
你可以看见桌子、椅子、地板等,
但是房子你是看不到全貌了。
对于一个类的实例来说,
你可以看到它的成员函数、成员变量,
但是实例本身呢?
this是一个指针,它时时刻刻指向你这个实例本身。
所以对类中的this 表示 this在一个类中,因为你无法进入这个类后再找到这个类的位置,所以需要this指向这个类地址本身,这样来操作在类中的数据
委托构造函数
比如当你需要重载多个构造函数 但是又不想在类外面写多个构造函数 而此时你所需要改变的只是少部分的参数
Clock(int newH, int newM, int newS): hour(newH),minute(newM), second(newS){
}//被调用后
//下面在冒号后面的都需要执行
Clock(): Clock(0, 0, 0) { }//这里总程序执行到Clock(0, 0, 0)先去进行clock函数然后再回来执行{}里面的
4. 关于this指针的一个精典回答:
当你进入一个房子后,
你可以看见桌子、椅子、地板等,
但是房子你是看不到全貌了。
对于一个类的实例来说,
你可以看到它的成员函数、成员变量,
但是实例本身呢?
this是一个指针,它时时刻刻指向你这个实例本身。
所以对类中的this 表示 this在一个类中,因为你无法进入这个类后再找到这个类的位置,所以需要this指向这个类地址本身,这样来操作在类中的数据
委托构造函数
比如当你需要重载多个构造函数 但是又不想在类外面写多个构造函数 而此时你所需要改变的只是少部分的参数
Clock(int newH, int newM, int newS): hour(newH),minute(newM), second(newS){
}//被调用后
//下面在冒号后面的都需要执行
Clock(): Clock(0, 0, 0) { }//这里总程序执行到Clock(0, 0, 0)先去进行clock函数然后再回来执行{}里面的
##有的时候构造函数 需要加const 不然会提示no matching function for call to `Example::Example(Example)'
Mystring(const Mystring &ns):len(ns.len){
int i=0;
for( int j=0;j<ns.len;j++,i++){
(this->c[i])=(ns.c[j]);
}
this->c[i]='\0';
}