我有一个看起来像这样的类(删除了细节):
class MyClass{
int seq[8];
...
public:
...
static struct{
bool sorted();
bool reverse_sorted();
...
}test;
};
我想要做的是将我的一些MyClass
成员函数分成漂亮的小组(结构)。问题是“test”结构中的函数需要访问MyClass
.
当我使用上面的代码时,我可以定义bool sorted(){..}
,但它不会MyClass
像我希望的那样使它成为命名空间的一部分。
我的目的是能够写出这样的东西:
MyClass M;
*do stuff with M*
if( M.test.sorted()){
*do something*
}
else if( M.test.reverse_sorted()){
*do something else*
}
有没有办法这样的事情是可能的?(如何)我可以允许内部结构访问类的数据成员吗?&& 我仍然可以使用“ MyObject.test.function()
”语法访问函数吗?