我有以下代码:
{'A': {'ind1': '167724.1407', 'ind2': '151859.5908', 'ind3': '150131.7254'},
'B': {'ind1': '186216.5193', 'ind2': '170351.9694', 'ind3': '168624.1039'}}
class example {
int x;
inline void operator=(int value) { x = value; }
};
int main() {
example foo { 100 };
int bar = foo;
}
显然不起作用,因为我正在尝试将类型为int bar = foo;
的变量分配给类型为example
的变量。
是否可以在不使用getter函数且不使用 int
的情况下检索x
变量?如果是这样,是否仍然可以仅通过该结构内部的代码并保持operator.
不变?
答案 0 :(得分:3)
添加一个conversion function以允许implicit conversion
struct example {
int x;
inline void operator=(int value) { x = value; }
operator int() const
{
return x;
}
};
int main() {
example foo { 100 };
int bar = foo;
}