Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 这一原则是可维护和可重用设计或代码的基础之一。我不想从头实现迭代器,因为这非常危险。我不认为这是我需要的,因为我仍然可以在幕后使用stl迭代器ContainerMap将使用map::iterator,而ContainerVector将使用vector::i_C++_Iterator_Containers - Fatal编程技术网

C++ 这一原则是可维护和可重用设计或代码的基础之一。我不想从头实现迭代器,因为这非常危险。我不认为这是我需要的,因为我仍然可以在幕后使用stl迭代器ContainerMap将使用map::iterator,而ContainerVector将使用vector::i

C++ 这一原则是可维护和可重用设计或代码的基础之一。我不想从头实现迭代器,因为这非常危险。我不认为这是我需要的,因为我仍然可以在幕后使用stl迭代器ContainerMap将使用map::iterator,而ContainerVector将使用vector::i,c++,iterator,containers,C++,Iterator,Containers,这一原则是可维护和可重用设计或代码的基础之一。我不想从头实现迭代器,因为这非常危险。我不认为这是我需要的,因为我仍然可以在幕后使用stl迭代器ContainerMap将使用map::iterator,而ContainerVector将使用vector::iterator。但是由于这两个迭代器没有公共的基类,所以我在AbstractClass class AbstractContainer { public: virtual MyIterator firstValue() = 0; }


这一原则是可维护和可重用设计或代码的基础之一。我不想从头实现迭代器,因为这非常危险。我不认为这是我需要的,因为我仍然可以在幕后使用stl迭代器
ContainerMap
将使用
map::iterator
,而
ContainerVector
将使用
vector::iterator
。但是由于这两个迭代器没有公共的基类,所以我在
AbstractClass
class AbstractContainer {
  public:
    virtual MyIterator firstValue() = 0;
}

class ContainerMap : public AbstractContainer {
  private:
    map<K, int>;
  public:
    MyIterator firstValue() { // return iterator over map values (int) }
}

class ContainerVector : public AbstractContainer {
  private:
    vector<int>;
  public:
    MyIterator firstValue() { // return iterator over vector values (int) }
}