无忧启动论坛

标题: 求助:C++ 变量赋值 语法 [打印本页]

作者: proof    时间: 6 天前
标题: 求助:C++ 变量赋值 语法
int  AST;
AST=8888;   // 第46行代码


这两行,居然报错,不知哪错了?
----------------------------------------------------------
e:\mygame.cpp(46) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
e:\mygame.cpp(46) : error C2086: 'int AST' : redefinition


作者: proof    时间: 6 天前
本帖最后由 proof 于 2024-11-29 16:55 编辑

之前在.h头文件里,声明了变量。编译报错。
把头文件里的变量,转移到cpp文件中。编译报同类错误。
怀疑是旧的缓存。清理(删除)旧的“解决方案”、旧的“生成”,重新生成(编译),故障依旧。
添加上述两行测试代码   int  AST;     AST=8888;     报同样错误。


机子上的VS2005象中了邪一样。

作者: a7777777    时间: 6 天前
谢谢!
作者: 喜欢与撩    时间: 6 天前
换一个编译器试试呢?
作者: flyhigh    时间: 6 天前
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

BaseClasses/ctlutil.h(278) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

错误发生在:operator=(LONG); 函数定义中,这是因为在VC6中,如果没有显示的指定返回值类型,编译器将其视为默认整型;但是vs2005不支持默认整型. 这个错误,解决方法如下:
打开project->BaseClasses properties->configuration->C/C++ ->Command Line,增加/wd4430选项。


这是百度搜索到的,供参考。或许你定义的函数,没有明确指定返回值类型。比如 int foo() { //something }函数定义时要加返回值类型比如int
作者: kun123322    时间: 6 天前
换一个
作者: slore    时间: 6 天前
AST 这个宏已经存在了。你就是int类型的变量,重新改个变量名。

int iCount = 0;
iCount = 888;
作者: 孟仁飞    时间: 5 天前
勤学好问
作者: proof    时间: 5 天前
slore 发表于 2024-11-29 23:03
AST 这个宏已经存在了。你就是int类型的变量,重新改个变量名。

int iCount = 0;

随便命名,报同样错误。
AST就是测试时起的名。
作者: slore    时间: 5 天前
proof 发表于 2024-11-30 20:33
随便命名,报同样错误。
AST就是测试时起的名。

你单独,下面的代码不会错。你这提示重复定义,如果改名也不行,那就是整体代码互相有问题,
你发的这块单独判断不出来问题。

  1. int main() {
  2.     int AST = 0;
  3.     AST = 888;
  4.     return 0;
  5. }
复制代码

作者: Lucy_99    时间: 5 天前
学习




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3