was not declared in this scope

时间:2021-06-17 06:54:34

“was not declared in this scope”是一个错误信息,在编译的时候会遇到。其含义为标识符在其出现的地方是未被定义的。

出现该错误的时候,会同时把未定义的变量名显示出来。比如如下程序:

int main()
{
    printf("%d",i);//这个i是没定义的。
}

就会显示一个'i' was not declared in this scope或者类似的错误信息出来。

对于变量和函数,如果未定义都会出现这个错误。

该错误出现时,需要根据出现该错误的行号及名称,查找对应名称变量或函数的作用,一般有如下几种可能:

1 忘记定义。写代码的时候疏忽了,导致一些变量直接使用但没有定义。只要对应定义相应的函数或变量即可。

2 拼写错误。写代码的时候,敲错了字符。比如sum敲成了Sum, average敲成averge等。对应修改即可。

3 作用域不正确。在超出变量和函数的作用域部分使用了该变量或函数。需要通过定义位置,或增加声明的手段,加大变量的作用域使其包含引用位置。