中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++中static關鍵字的用途有哪些

c++
小億
85
2024-01-05 20:33:45
欄目: 編程語言

在C++中,static關鍵字有以下幾個用途:

  1. 靜態成員變量:使用static關鍵字聲明的成員變量被稱為靜態成員變量。靜態成員變量屬于類而不是對象,所有該類的對象共享同一個靜態成員變量的值。靜態成員變量可以在類的任何實例之間共享數據。靜態成員變量在類外部進行初始化,也可以在類內部進行初始化。
class MyClass {
public:
    static int count;
};

int MyClass::count = 0;

int main() {
    MyClass obj1;
    MyClass obj2;
    obj1.count = 5;
    obj2.count = 10;
    std::cout << obj1.count << std::endl;  // 輸出10
    std::cout << obj2.count << std::endl;  // 輸出10
    return 0;
}
  1. 靜態成員函數:使用static關鍵字聲明的成員函數被稱為靜態成員函數。靜態成員函數在類的對象上調用,而不是特定的實例。靜態成員函數無法訪問非靜態成員變量,只能訪問靜態成員變量。
class MyClass {
public:
    static void print() {
        std::cout << "Hello, World!" << std::endl;
    }
};

int main() {
    MyClass::print();  // 輸出Hello, World!
    return 0;
}
  1. 靜態局部變量:在函數內部使用static關鍵字聲明的變量被稱為靜態局部變量。靜態局部變量在函數首次調用時初始化,并且在函數調用結束后仍然保持其值,直到程序結束。靜態局部變量的作用域僅限于聲明它的函數。
void foo() {
    static int count = 0;
    count++;
    std::cout << count << std::endl;
}

int main() {
    foo();  // 輸出1
    foo();  // 輸出2
    foo();  // 輸出3
    return 0;
}
  1. 靜態關鍵字還可以用于修改函數和變量的可見性。在函數或變量前面添加static關鍵字,可以將它們的可見性限制在當前文件中,避免與其他文件中的同名函數或變量沖突。這種用法通常在頭文件中的函數或變量前使用,以防止重定義錯誤。

0
花垣县| 色达县| 广元市| 东乡族自治县| 疏附县| 长寿区| 临澧县| 安泽县| 广丰县| 寿宁县| 英吉沙县| 益阳市| 青铜峡市| 西平县| 肥城市| 台南县| 凌源市| 宁乡县| 阿克| 吉安市| 电白县| 固原市| 沛县| 怀宁县| 东海县| 涡阳县| 镶黄旗| 阳朔县| 温州市| 隆尧县| 静乐县| 昭苏县| 万州区| 垫江县| 广灵县| 岳池县| 将乐县| 宾川县| 宁安市| 四会市| 安顺市|