以下代码段在C ++中的含义相同。我正在将java应用程序的一部分转换为C ++。
这是java类片段:
class container {
Public static final Object CONTAINER_FULL = new Object {
public boolean equals(Object other) {
// ...
}
String toString() {
// ...
}
// ...
}
// ...
}
上面的类包含在java接口类“container”中。 电话是......
public Object fetch_the_object(int at_pos) {
if (at_pos == MAX) {
return container.CONTAINER_FULL;
}
// ...
}
该静态类及其调用的C ++中最接近的等价物是什么?
答案 0 :(得分:1)
class Thing
{
public:
static const OtherThing CONTAINER_FULL;
};
const OtherThing Thing::CONTAINER_FULL = blah;
必须在类体外部定义常量,静态,非整数数据类型。如果您希望OtherThing为任何内容,请将其更改为
void *
答案 1 :(得分:0)
这样的事情,也许是:
struct Container {
struct Full {
...
};
static const Full full;
};