繁体   English   中英

错误:分配只读变量

[英]error: assignment of read-only variable

我有一个main.h文件,并包含static const unsigned int TIME = 13; 我有和main.cpp文件包括

    int64_t Gettime(int nnow, int64_t never)


{ 
   static const bool TIME = true;

    if(nnow == 6)
    {
        TIME = 9; 
    }

    else if(nnow == 8)
    {
        TIME = 3; 
    }

    else if(nnow == 1)
    {
        TIME = 40;
    }

    else if(nnow > 190)
    {
        TIME = 4000000;
    }

    return TIME + never;
}

在编译时,我得到main.cpp:56:24:错误:分配只读变量'TIME'TIME = 3; ^

我想使用main.cpp函数从main.h更改TIME变量有什么帮助吗?

TIME变量被声明为const ,因此您将只能读取其值而不能修改它,这就是编译器在错误中告知您的内容。

如果必须修改该变量,则必须删除const限定符。

@shafeen的答案是正确的,但是由于您似乎不太了解它,所以一些代码呢?

更改此:

static const bool TIME = true;

至:

static bool TIME = true;

我本来会将它作为对@shafeen答案的评论,但我没有代表:(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM