“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 作用域不正確。在超出變量和函數的作用域部分使用了該變量或函數。需要通過定義位置,或增加聲明的手段,加大變量的作用域使其包含引用位置。