首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

访问类成员C++

访问类成员是指在C++中通过对象来访问类的成员变量和成员函数。在C++中,类的成员可以分为公有成员、私有成员和保护成员。

公有成员是指可以在类的内部和外部访问的成员,可以通过对象直接访问。私有成员是指只能在类的内部访问的成员,无法通过对象直接访问。保护成员是指只能在类的内部和派生类中访问的成员。

访问类成员的方式有两种:点运算符和箭头运算符。点运算符用于访问对象的成员,而箭头运算符用于访问指向对象的指针的成员。

下面是一个示例代码:

代码语言:txt
复制
#include <iostream>
using namespace std;

class MyClass {
public:
    int publicVar;
    void publicFunc() {
        cout << "This is a public function." << endl;
    }

private:
    int privateVar;
    void privateFunc() {
        cout << "This is a private function." << endl;
    }

protected:
    int protectedVar;
    void protectedFunc() {
        cout << "This is a protected function." << endl;
    }
};

int main() {
    MyClass obj;
    obj.publicVar = 10;  // 访问公有成员变量
    obj.publicFunc();   // 调用公有成员函数

    // obj.privateVar = 20;  // 错误,无法访问私有成员变量
    // obj.privateFunc();   // 错误,无法调用私有成员函数

    // obj.protectedVar = 30;  // 错误,无法访问保护成员变量
    // obj.protectedFunc();   // 错误,无法调用保护成员函数

    MyClass* ptr = &obj;
    ptr->publicVar = 40;  // 通过指针访问公有成员变量
    ptr->publicFunc();   // 通过指针调用公有成员函数

    // ptr->privateVar = 50;  // 错误,无法通过指针访问私有成员变量
    // ptr->privateFunc();   // 错误,无法通过指针调用私有成员函数

    // ptr->protectedVar = 60;  // 错误,无法通过指针访问保护成员变量
    // ptr->protectedFunc();   // 错误,无法通过指针调用保护成员函数

    return 0;
}

在上述示例代码中,我们定义了一个名为MyClass的类,其中包含了公有成员publicVar和publicFunc,私有成员privateVar和privateFunc,以及保护成员protectedVar和protectedFunc。在main函数中,我们创建了一个MyClass对象obj,并通过对象访问了公有成员变量和成员函数。同时,我们还创建了一个指向obj的指针ptr,并通过指针访问了公有成员变量和成员函数。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云C++ SDK:https://cloud.tencent.com/document/product/876/19399
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云数据库MySQL版:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云云函数(Serverless):https://cloud.tencent.com/product/scf
  • 腾讯云容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
  • 腾讯云物联网通信:https://cloud.tencent.com/product/iotexplorer
  • 腾讯云移动开发:https://cloud.tencent.com/product/mobdev
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云区块链服务:https://cloud.tencent.com/product/tbaas
  • 腾讯云游戏多媒体引擎(GME):https://cloud.tencent.com/product/gme
  • 腾讯云音视频处理(VOD):https://cloud.tencent.com/product/vod
  • 腾讯云元宇宙:https://cloud.tencent.com/product/mu
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券