C++ 类的 this 指针 语法练习3
2012-10-03 03:26
573 查看
#include <iostream> #include <string> using namespace std; // 定义一个类 Student class Student { private: string name; int age; string address; public: // 存 void setname(string s){ name = s;} void setage(int y){age = y; } void setaddress(string add){address = add;} // 取 string getname(){return name;} int getage(){return age;} string getaddress(){return address;} // 返回 指向Student 对象的指针,因为this是指针,且是指向当下对象的指针 Student* Show() { cout<<"姓名: "<<name<<" --- 年龄: "<<age<<" ---- 住址: "<<address<<endl; return this; } protected: }; int main(void) { Student x; x.setname("柳絮飘"); x.setage(22); x.setaddress("学明路115号"); // 类的成员函数Show返回的是this指针, // x.Show()并没有用一个指针变量来接受它的返回值就直接用了. // 有返回值的函数,调用时并不一定要搞个变量接受它的返回值. x.Show()->Show()->Show()->Show(); // cout<<"对象x的地址 = "<<&x<<endl; cout<<"--------------------------------------------------"<<endl; // 搞个指针变量来接受吧. Student * y =NULL; y = x.Show(); cout<<"指针y的地址 = "<<y<<endl; y->setname("张生民"); y->setage(23); y->setaddress("琴海路136号"); y->Show()->Show()->Show(); // -------------------- return 0; }
//--
从结果看,对象x的地址与指针y的地址是一样的, 说明show返回的指针this 是指向当前对象x的.
相关文章推荐
- C++ 类的 this 指针 语法练习
- C++ 类的 this 指针 语法练习2
- C++ 类的 this 指针 语法练习4
- C++ 类的 this 指针 语法练习5
- C++语法基础--类(class)--类型别名,this指针,初始化式,友元的一些注意细节
- c++主项练习错题分析(1) const,this指针
- 浅析C++中的this指针
- c++的this指针
- C++之指针(对象指针+对象成员指针+this指针[待补充])
- 语法:c++对关于空指针0/NULL/nullptr三者的演变
- C++文本查询程序 定义类管理数据 用智能指针 C++Primer练习12.30
- C++文本查询程序 定义类管理数据 用引用共享数据 不用智能指针 C++Primer练习12.27
- 浅谈C++的this指针
- C++中this指针的用法详解
- 浅谈C++中的this指针
- c++ 如何把this指针传入成员函数 像全局函数一样调用成员函数
- C++语法基础--智能指针
- 浅析C++中this指针
- C++ 类中的this指针
- C++中this指针的用法