0

如果我想通过迭代器 iter 打印所有名称,我需要写什么(在“?!?!?!”)?该类只有名称,c

//the code
    class H {
        string name;
    public :
        H (string n="WWW"): name(n){}
        string getName()const{return name;};
    };

    void main ()
    {
        H h1("HHH");
        H h2;
        list<H*> HH;
        list<H*>::iterator iter=HH.begin();

        HH.insert(iter,h1);
        HH.insert(iter,h2);

        for (; iter != HH.end(); iter++)
            cout<<iter  //?!?!?!
    }                                                       
4

1 回答 1

1

std::cout << (*iter)->getName() << '\n';

或除换行符以外的任何分隔符。

此外,您的insert行是错误的,因为h1并且h2有 type H,而容器是H*.

于 2013-02-23T22:01:40.333 回答