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