嵌套类定义C ++

时间:2017-02-12 22:48:55

标签: c++ inner-classes

刚才有一个关于使用嵌套类定义函数的快速问题。

鉴于以下示例:

class OuterClass   {
     class InnerClass{
         public:
         void someMethod();
     };

     InnerClass someFunction();

};

我理解你可以在.cpp中定义someMethod:

 void OuterClass::InnerClass::someMethod() { 
    // stuff}

但是InnerClass someFunction的定义怎么样呢?

1 个答案:

答案 0 :(得分:4)

OuterClass::InnerClass OuterClass::someFunction()
{
    // Code here...
}

相同的规则同时适用于InnerClasssomeFunction:它们在OuterClass内声明,因此必须通过OuterClass::来限定它们。