【发布时间】:2015-09-17 13:36:22
【问题描述】:
所以我有一个类似于这个的类:
class CVal {
public:
void operator=(int n) {
d = n;
}
private:
int d;
};
现在每当我做类似的事情时
CVal c;
switch(c) {...}
我希望访问 CVal::d,那么我该怎么做呢?我想重载一些运算符,但我找不到任何东西。
【问题讨论】:
-
要么将
d公开,要么创建一个返回它的getter函数,然后在开关中执行c.d或c.d()。 -
这是个坏主意。如果你有虫子,找到它会很痛苦。更好的方法是:
switch(c.GetMyValue()) {...}
标签: c++ class variables operator-overloading operators