VC6下 在类里面定义static const int ID_SIZE = 10;定义会报错, 在不换编译器的条件下有什么解决办法?

gerry2000 2007-07-26 04:51:03
我在Unix下写的程序, 用acc编译运行都是没问题的。 我现在为了方便把工程迁移到VC6下编译, 但 类里面定义static const int ID_SIZE = 10 类似的语句都会报错, 因为程序只是在VC6下写和编译, 写完后还是要到UNIX下编译运行, 所以不想为了迎合VC6而改程序。 目前我的电脑上还装了VS2003, 能不能把VC6的某个文件替换掉就使VC6编译不报错。 或者其它办法。

另外大家推荐在 类里以 static const int ID_SIZE = 10; 这种方式定义常量不??
...全文
271 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
gerry2000 2007-07-31
  • 打赏
  • 举报
回复
我换了.NET2003啦, 搞定了。 VC6真麻烦。
rabbit729 2007-07-26
  • 打赏
  • 举报
回复
enum{int ID_SIZE = 10};
gerry2000 2007-07-26
  • 打赏
  • 举报
回复
装了个Intel C++ Complier, 结果插件装在VS2003上, 没装在VC6上! 郁闷哦,楼上的好方法我下次用算了,谢谢。
再装下Intel,看能插到VC6上不。 不行我就先到Unix下编译算了, 过两天有时间再弄算了。
  • 打赏
  • 举报
回复
或者在类外面初始化
  • 打赏
  • 举报
回复
static const int ID_SIZE = 10;
推荐用enum{ID_SIZE = 10};
都支持的
goodluckyxl 2007-07-26
  • 打赏
  • 举报
回复
静态的常量应该是可以定义的吧
gerry2000 2007-07-26
  • 打赏
  • 举报
回复
谢谢各位了, 不过我不想改代码啊,
我先下个Intel C++ 装一下看看
lddLinan 2007-07-26
  • 打赏
  • 举报
回复
改成在类外面定义好了,所有编译器都支持,不必担心回到unix下就编译不过
MPTD_Fire 2007-07-26
  • 打赏
  • 举报
回复
使用宏定义看看
mLee79 2007-07-26
  • 打赏
  • 举报
回复
换枚举吧 ...
magiclspl 2007-07-26
  • 打赏
  • 举报
回复
应该没错,static const int ID_SIZE = 10;这种定义常量的方式是正确的。
taodm 2007-07-26
  • 打赏
  • 举报
回复
加装intel编译器就可以了
gerry2000 2007-07-26
  • 打赏
  • 举报
回复
我定义的常量太多了, 要像neosu(CrazyNeo)加我的工作量也很大啊!
#ifdef _WIN32

#else

#endif
neosu 2007-07-26
  • 打赏
  • 举报
回复
建议用条件编译

#ifdef _WIN32

#else

#endif

改变在vc6时的定义方式

64,646

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧