读书人

VC6下 在类里面定义static const int

发布时间: 2012-03-22 17:43:57 作者: rapoo

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

另外大家推荐在 类里以 static const int ID_SIZE = 10; 这种方式定义常量不??

[解决办法]
建议用条件编译

#ifdef _WIN32

#else

#endif

改变在vc6时的定义方式
[解决办法]
加装intel编译器就可以了
[解决办法]
应该没错,static const int ID_SIZE = 10;这种定义常量的方式是正确的。
[解决办法]
换枚举吧 ...
[解决办法]
使用宏定义看看
[解决办法]
改成在类外面定义好了,所有编译器都支持,不必担心回到unix下就编译不过

[解决办法]
静态的常量应该是可以定义的吧
[解决办法]
static const int ID_SIZE = 10;
推荐用enum{ID_SIZE = 10};
都支持的
[解决办法]
enum{int ID_SIZE = 10};

读书人网 >C++

热点推荐