vector的陷阱
#include <string>
#include <iostream>
#include <vector>
using namespace std;
class Man
{
public:
Man()
{
this->count = 0;
}
void play()
{
count += 10;
cout<<"I am playing"<<endl;
}
int getDrinkCount()
{
return count;
}
private:
int count; /* 一共喝了多少酒 */
};
int main()
{
vector<Man> man;
Man zhangfei, liubei, guanyu;
man.push_back(liubei);
man.push_back(guanyu);
man.push_back(zhangfei);
man[0].play();
cout<<man[0].getDrinkCount()<<endl;
cout<<liubei.getDrinkCount()<<endl;
system("pause");
return 0;
}
運行結果:
總結:
push_back 是把參數的值, 拷貝給 vector
men[0] 的值和 liubei 是相同的, 但是, 是兩個不同的對象
結語:
星期六2053組織打球, 計算機網絡作業搞定, ok, 手錶忘記帶回, 只能會球場拿回來.
時間: 2020-06-21-10-32