摘要:STL的for_each使用
同上一篇,在CClass裡加上:
private: class ShowID { public: ShowID() {} ~ShowID() {} void operator() (CStudent student) { std::cout << student.GetID() << std::endl; } };
然後把CClass::ShowAll()改寫成以下即可:
std::for_each(this->m_students.begin(), this->m_students.end(), CClass::ShowID());
不過,我是覺得在這個例子裡,把ShowID放到CClass不是很好啦,我是認為學生要自己知道自己的資料,然後再由班級去叫學生輸出,而不是班級自己去把學生的資料叫出來輸出。