私有静态在C ++中意味着什么

时间:2015-05-19 22:18:56

标签: c++ class oop design-patterns

在c ++中,类成员对private static意味着什么。什么时候应该使用private static变量?

3 个答案:

答案 0 :(得分:2)

标识符private限制对类方法和类朋友的访问。

static标识符表示在所有子项中只共享一个变量实例。

因此,private static表示只有一个实例的数据成员,无论实例数多少,只有类方法和类朋友才能访问它。

答案 1 :(得分:1)

  

"在c ++中,类成员对private static意味着什么。"

假设您有一些声明,如

class A {
private:
    static const size_t MAX_BUFFER_SIZE = 2048;
};

这意味着您有MAX_BUFFER_SIZE A private static,任何函数都无法访问,但{{1}}类成员无法访问。

  

"我应该何时使用{{1}}个变量?"

如果您不希望客户访问这些内容,但又是依赖于实现的详细信息,那么这只能用于您班级的内部实施。

答案 2 :(得分:0)

你可以分解属性:

private只有class和friend类可以访问变量

static只有一个变量实例,可以被类的所有实例访问