#include <iostream> #include <string> #include <vector> #include <iomanip> using namespace std; class info { public: info():pc(0){} ~info(){} void input(string name,int age,int salary) { _name.push_back(name); _age.push_back(age); _salary.push_back(salary); pc++; } void show() { for (int i=0;i<pc;i++) { cout<<"name :"<<_name[i]<<setw(10); cout<<"age :"<<_age[i]<<setw(10); cout<<"salary:"<<_salary[i]<<endl; } } info* operator=(info* p) { info* temp; temp->_name=p->_name; temp->_age=p->_age; temp->_salary=p->_salary; temp->pc=p->pc; return temp; } private: int pc; vector<string> _name; vector<int> _age; vector<int> _salary; }; class Memorandum { public: Memorandum(){} ~Memorandum(){} void Save(info p) { _wh.push_back(p); } info Load() { vector<info>::reverse_iterator rit; rit=_wh.rbegin(); return *rit; } private: vector<info> _wh; }; int main() { Memorandum *p_wh=new Memorandum; info p_info; p_info.input("zhangsan",20,4000); p_wh->Save(p_info); p_info.show(); cout<<endl; p_info.input("lisi",22,5000); p_info.input("wangwu",23,6000); p_info.show(); cout<<endl; p_info=p_wh->Load(); p_info.show(); delete p_wh; system("pause"); return 0; }