当前位置:首页 C++ > 正文

c++访问一个指针所指向的对象的成员

作者:野牛程序员:2023-08-07 10:20:43 C++阅读 2680

在C++中,可以通过指针来访问其所指向的对象的成员。使用指针访问对象的成员需要使用箭头运算符 ->

下面是一个示例,演示如何使用指针访问对象的成员:

#include <iostream>

class MyClass {
public:
    int value;

    MyClass(int val) : value(val) {}

    void printValue() {
        std::cout << "Value: " << value << std::endl;
    }
};

int main() {
    MyClass obj(5);
    obj.printValue(); // 直接访问对象的成员

    MyClass* ptr = &obj; // 声明一个指向MyClass对象的指针,并指向obj

    // 使用箭头运算符访问指针所指向的对象的成员
    ptr->value = 10; // 修改对象的成员值
    ptr->printValue(); // 输出修改后的值

    return 0;
}

在上述例子中,定义了一个名为MyClass的类,该类有一个成员变量value和一个成员函数printValue()。在main()函数中,创建了一个MyClass对象obj,并直接访问了对象的成员value,然后调用了printValue()方法输出了对象的成员值。

接着,声明了一个指向MyClass对象的指针ptr,并将其指向obj。通过使用箭头运算符 ptr->value,可以访问指针ptr所指向的对象的成员value,并将其修改为10。然后,我们再次调用ptr->printValue()方法,输出修改后的成员值。

需要注意的是,在使用指针访问对象成员之前,确保指针指向的对象是有效的,即避免使用空指针或野指针。如果指针为空或指向了无效的内存区域,访问对象的成员将导致未定义的行为。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击