今天写了一段代码,一开始就编译不过。简言之,是犯了这样的错误。
我在所有的函数外写了类似这样的代码(只是用一个简单的例子说明)
int i;
i = 0;
报错信息长这样: [Error] 'i' does not name a type
原因:不能在函数外给全局变量赋值。
补充:虽然不能在函数外给全局变量赋值,但可以初始化,即int i = 0;
解决方案:简单的数据类型可以直接初始化,复杂的(如自定义的struct, class等,或是数组 、容器等)可以在函数外定义,在函数内赋值。比如我写了一个init()函数,为这些全局变量赋值。