1
template<class T>
class mStack
{
private:
vector<T> a;
vector<T>::iterator top;
public:
void push(T);
T pop();
mStack();
void printStack();
};
上記のクラスのコードはコンパイルされていません...なぜですか?何が問題ですか?コンパイラは "expected; above top"と言っています。cppイテレータの問題
typename vector<T>::iterator top;
は、これは本当にコンパイラタールvector<T>
を安心させるタイプである:
私はそれを得ることができます..あなたは私にいくつかの例を示すことができますか? – suresh
ニールが示唆しているものであなたの文字列を "トップ"に置き換えてください。 – sharptooth
私はそれが必要なときに良い、簡単な説明を書くことができたらいいと思っていますが、実際にはテンプレートパラメータを使用する型の前にtypenameを追加するだけで大丈夫です。 –