在类中创建静态变量(C ++)

维利亚米·马埃(Viliami Mahe)

所以我是一个编程新手,我不确定为什么我不能在我的课堂上做一个静态变量吗?我上课时遇到了一个问题,我不确定是否要正确解决问题。问题是:用静态成员项创建一个类,以便每当创建一个新对象时,都可以报告该类的对象总数。

到目前为止,这是我的代码:

#include <iostream>

class ObjectCount
{
public:
    ObjectCount();
    void reportObjectNo();

private:
    static int objectNo = 0;

};


ObjectCount::ObjectCount()
{
    objectNo++;
}

void ObjectCount::reportObjectNo()
{
    std::cout << "Number of object created for class ObjectCount: " << objectNo << std::endl;
}

int main()
{
    ObjectCount firstObject;
    firstObject.reportObjectNo();

    ObjectCount secondObject;
    secondObject.reportObjectNo();

    ObjectCount thirdObject;
    thirdObject.reportObjectNo();
    return 0;
}

我得到的错误是:

ISO C++ forbids in-class initialization of non-const static member 'objectNo'
line 9

如果您已经提出了要求,我深表歉意,但是如果有任何链接,我们将不胜感激:)

乔纳森·卡伦

错误消息告诉您不能从类内部初始化const static成员。这意味着您将需要更改代码,使其看起来更像:

class ObjectCount
{
public:
    ObjectCount();
    void reportObjectNo();

private:
    static int objectNo;

};

int ObjectCount::objectNo = 0;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在类中动态创建静态变量

来自分类Dev

类中的C ++静态变量

来自分类Dev

在C中创建静态变量

来自分类Dev

C ++中的静态类成员变量和静态变量

来自分类Dev

使用静态变量在Objective C中引用类的实例?

来自分类Dev

python类中的静态变量

来自分类Dev

标头中定义的静态类方法中的C ++静态变量

来自分类Dev

如何在类静态成员中引用静态变量?

来自分类Dev

C ++和Java中的静态变量

来自分类Dev

成员函数中的C ++静态变量

来自分类Dev

C结构中的静态变量

来自分类Dev

C ++中的隐式静态变量?

来自分类Dev

成员函数中的C ++静态变量

来自分类Dev

C中的静态变量存在问题

来自分类Dev

从存储在变量中的类访问静态变量

来自分类Dev

从存储在Class变量中的类获取静态变量

来自分类Dev

C ++:在初始值设定项中类静态变量的定义中的名称查找

来自分类Dev

C ++:在初始值设定项中类静态变量的定义中的名称查找

来自分类Dev

从xsd创建静态变量

来自分类Dev

对于c ++中的单个静态变量,有没有比类更好的选择?

来自分类Dev

Python 2.7:如何获取类中的静态变量列表?

来自分类Dev

在函数php中的类内部访问公共静态变量

来自分类Dev

在枚举类中声明一个静态变量

来自分类Dev

pythone中类方法和静态变量的行为

来自分类Dev

另一类中的非静态变量

来自分类Dev

我在单例类中需要静态变量吗?

来自分类Dev

类中的静态变量和内存分配及其使用

来自分类Dev

在python类中引用整数作为静态变量

来自分类Dev

php:如何从继承的类中获取静态变量?