c++ class類靜態(tài)成員如何聲明

c++
小樊
81
2024-09-24 23:39:14

在C++中,類的靜態(tài)成員可以通過(guò)以下兩種方式進(jìn)行聲明:

  1. 在類定義內(nèi)部進(jìn)行聲明:
class MyClass {
public:
    static int myStaticMember; // 靜態(tài)成員聲明
};

// 靜態(tài)成員定義(通常放在類外部)
int MyClass::myStaticMember = 0;
  1. 在類定義外部進(jìn)行聲明和定義:
class MyClass; // 前置聲明

int MyClass::myStaticMember = 0; // 靜態(tài)成員定義

在這兩種方式中,都需要在類外部提供靜態(tài)成員的定義(即分配存儲(chǔ)空間并初始化)。靜態(tài)成員屬于類本身,而不是類的某個(gè)對(duì)象,因此可以直接通過(guò)類名和范圍解析運(yùn)算符::訪問(wèn),而不需要?jiǎng)?chuàng)建類的實(shí)例。例如:

int main() {
    MyClass::myStaticMember = 10; // 修改靜態(tài)成員的值
    int value = MyClass::myStaticMember; // 訪問(wèn)靜態(tài)成員的值
    return 0;
}

0