马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
成员函数中可以直接存取其他成员,例如以下的do_something(),a与b为两个资料成员
- int do_something() {
- return a + b;
- }
复制代码 这种写法指是种轻便的方式,实在编译器会主动填入this 指标(pointer) ,如下
- int do_something() {
- return this->a + this->b;
- }
复制代码 this指标用来存取类别中的成员,明白利用this指标也不必担心成员函数的参数名称是否与变数成员雷同,举例如下
- #include <iostream>
-
- class Demo {
- public:
- Demo(int a, int b) {
- this->a = a;
- this->b = b;
- }
-
- int do_something() {
- return this->a + this->b;
- }
-
- private:
- int a;
- int b;
- };
- int main() {
- Demo d(22, 60);
- std::cout << d.do_something() << std::endl;
-
- return 0;
- }
复制代码 建构函数 Demo()的参数a与b与资料成员a与b有雷同的名称,由于明白利用this指标,以是可以区分哪个a与b是参数,另一个a与b则是资料成员
- Demo(int a, int b) {
- this->a = a;
- this->b = b;
- }
复制代码 编译实行,效果如下
- $ g++ u0907.cpp
- $./a.out 复制代码
- 82
- $
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |