关于如何使用嵌套类迭代器有任何建议吗
在C++中的ABC中?请注意,我还想让一个虚函数返回一个
该类的实例。

更具体地说,这是我的方法:

class ABC {
        typedef iterator<forward_iterator_tag, MyType> MyTypeIter;
        virtual MyTypeIter *begin() = 0;
};

class Foo : ABC {
        MyTypeIter : public ABC::MyTypeIter;
        virtual MyTypeIter *begin();
};

ABC::MyTypeIter *Foo::begin()
{
        Foo::MyTypeIter *ret;
        ret = new Foo::MyTypeIter(...);
        return ret;
}

有没有比这更好的方法(例如,不使用指针的方法)?

最佳答案

你有什么问题?嵌套类的行为与顶级类相同,因此您可以返回其对象,就像返回其他任何对象一样。

关于c++ - 抽象基类(C++)中的嵌套类定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1021135/

10-10 15:13