c++怎么才能在类里面定义常量?(0分)

  • 主题发起人 主题发起人 LitterTiger
  • 开始时间 开始时间
L

LitterTiger

Unregistered / Unconfirmed
GUEST, unregistred user!
有时常量最好定义在类里面,难道必须用namespace?
c++的标准库里的现代特性,不知道大家用的多麻?
我是还没有这个习惯,像auto_ptr什么的。
c++这东西还不错,只可惜标准库出来的太晚了,
现在c++在windows下也没个像样点的工具,真是遗憾.
 
怎么没人说句话呀
 
enum 不算是常量吧
 
有时常量最好定义在类里面。
你能举个例子吗?C++既然限制此举,该有它的道理。
 
你不会是说java里的final int const_val=1;没有用武之地吧
 
没理解你的问题,const int const_val = 1;
这个不算?
 
理解你的问题了,在C++的类中,定义常量需要用到初始化列表:
class Test
{
const int const_val;
public:
Test() : const_val(1) {};
};
 
好像标准C++里面类声明里可以初始化int数据,但是CB不行、
不知道是不是我记错了
 
不要抱怨了,BCB就不兼容C++标准,好多C++东东都没实现.
急吧,你。
我急死了。但项目要用这个,真没办法.
 
直接定义,没错啊。
在类里可以 typedef, 可以 #define ,可以 const ,
怎么会不行?
class myclass {
typedef ...
const ...
#ifdef
#else
#endif
}
 
但这些常量只能在类里面,否则必须 public 后再用 myclass->myconsts
调 用。如果是全局常量,必须在 namespace 或者某个 .h 里面定义。
 
强烈推荐使用 enum
这是 Stroustrup 的意见。
 
后退
顶部