在类中定义IDD到底是什么
如下:
class Man
{
public:
enum {IDD = 5000};
};
class BMan : public Man
{
BMan()
{
IDD;
}
};
这个IDD到底是什么 ? 难道是Man类的成员变量?
一般MFC 基于对话框的程序中,对话框的类声明中也有这种 IDD = 模板ID号的
就是不明白这种语法,请问哪位大侠给解释下。
[解决办法]
定义一个匿名的枚举的成员IDD.
值是5000.
然后,再这里面当做一个有名字的常量来用.
用IDD代替5000这个数字.
[解决办法]
不算完全等价吧。“in—class初值设定”只允许对整数常量进行。如果当你在class编译期间需要一个class常量值,例如某个数值作为一个成员数组的大小(编译器是坚持在编译期间就要知道数组大小的)这时候如果你的编译器不允许static整数型class常量完成“in-class 初值设定”,可用enum:一个属于枚举类型的数值可权充int被使用。