?? copy_assign.cc
字號:
#include <iostream>using namespace std;#include <string>class Person{ string name; bool gender; Person* lover; void operator=(const Person& o){}public: Person(string n, bool g) :name(n), gender(g), lover(NULL) {} Person(const Person& o) :gender(o.gender), name(o.name), lover(NULL) {} bool zhui(Person& obj){ cout << name << "追求" << obj.name << endl; if(lover!=NULL||obj.lover!=NULL) return false; if(gender==obj.gender) return false; lover = &obj; obj.lover = this; return true; } bool fenshou(){ cout << name << "想分手" << endl; if(lover==NULL){ cout << name << "啊,你沒事吧,單身跟誰分手?" << endl; return false; } lover->lover = NULL; lover = NULL; return true; } void show(){ cout << "我是" << name << "," << (gender?"男":"女") << "性,"; if(lover==NULL) cout << "我還是單身" << endl; else cout << "我的" << (lover->gender?"男友":"女友") << "是" << lover->name << endl; } void setName(string n){ name = n; }};int main(){ Person zhang("小張", true); Person wang("小王", true); Person li("小麗", false); Person fang("小芳", false); Person hong("小紅", false); zhang.zhui(fang); Person liu(zhang); liu.setName("小劉"); zhang.show(); liu.show(); liu.fenshou(); zhang.show(); liu.show(); fang.show(); //li = fang;}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -