カスタムスタックテンプレートクラスにイテレータをネストしました。 ここで問題になるのは、メインスタックのイテレータを作成するときに、ネストされたイテレータのコンストラクタが一致しないということです。私はその問題が何であるか疑問に思います。カスタムテンプレートクラスのC++イテレータ
template <class T>
class stack
{
private:
int top;
T st[100];
public:
class my_iterator
{
public:
my_iterator() : list(0), curr(0) {};
private:
stack<T> list;
int curr;
};
//publics in stack class
public:
stack();
void push(T i);
T pop();
void print();
bool is_full();
my_iterator begin() {};
};
と私はメイン
stack<double>::my_iterator it;
今、問題が見つかりましたが、できませんでした – starcorn
なぜあなたのイテレータは独自のスタックを作成しますか?そして、より小さい点:なぜあなたのスタックは固定サイズの配列ですか? – Sebastian
@セバスチャン、私はリンクされたリストを手間をかけたくない、私はちょっと実験したかったので、私は配列を使った。そして、それはそれ自身のスタックを作成するべきではありません。私は間違いを犯したため、コンパイルエラーも発生しました。 – starcorn