面试题答案
一键面试在C++中,成员函数通过this
指针来区分不同MyClass
对象的data
数据。this
指针是一个隐含指针,它指向调用成员函数的对象。
以下是代码示例:
#include <iostream>
class MyClass {
private:
int data;
public:
MyClass(int value) : data(value) {}
void printData() {
// 使用this指针访问当前对象的data成员
std::cout << "Object address: " << this << ", data value: " << this->data << std::endl;
}
};
int main() {
MyClass obj1(10);
MyClass obj2(20);
obj1.printData();
obj2.printData();
return 0;
}
在上述代码中:
MyClass
类有一个私有成员变量data
。- 构造函数用于初始化
data
。 printData
成员函数使用this
指针来访问并打印当前对象的data
值。通过调用不同对象的printData
函数,可以看到不同对象的data
值以及对象的地址,从而证明成员函数可以区分不同对象的data
数据。