1:对于类的非静态成员,每个对象都有自己的一份拷贝,即每个对象都有自己的数据成员,不过成员函数却是每个对象共享的。那么调用共享的成员函数如何找到自己的数据成员呢?答案是通过类中隐藏的this指针。

2:示例代码:

// 7.6.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
using namespace std;
class CBook                                //定义一个CBook类
{
public:
    int m_Pages;                            //定义一个数据成员
    void OutputPages()                        //定义一个成员函数
    {
        //cout<<m_Pages<<endl;             //隐式调用    
        cout<<this->m_Pages<<endl;                //显式调用
    }
};
int main(int argc, char* argv[])
{
    CBook vbBook,vcBook;                    //定义两个CBook类对象
    vbBook.m_Pages = 512;                    //设置vbBook对象的成员数据
    vcBook.m_Pages = 570;                    //设置vcBook对象的成员数据
    vbBook.OutputPages();                    //调用OutputPages方法输出vbBook对象的数据成员
    vcBook.OutputPages();                    //调用OutputPages方法输出vcBook对象的数据成员
    return 0;
}
View Code

相关文章:

  • 2021-10-23
  • 2021-08-21
  • 2022-12-23
  • 2021-04-22
  • 2021-09-15
  • 2021-09-30
猜你喜欢
  • 2021-05-16
  • 2022-12-23
  • 2021-10-12
  • 2022-12-23
  • 2021-09-19
相关资源
相似解决方案