c 實現簡單的通訊錄

2021-08-01 10:59:32 字數 2114 閱讀 7259

1 程式中運用到兩個類,乙個是person類,另乙個是list類。前者儲存使用者資訊,後者主要用於操作,如增刪改查等。但由於本程式中沒有涉及到太複雜的功能,使用者資訊可以由乙個簡單的結構體表示,但是為了以後拓展方便,和達到學習運算子過載的目的,還是使用了類。

3 setout()方法設定字元左對齊,便於美觀。另外std::cout.width(15)設定輸出字元域寬度,只對下一次輸出有效。

4 判斷文字檔案是否為空還有另一種方法,即string類中的empty()方法,但為了讀取方便沒有採用。

5 其實對於通訊錄的操作只是在類內的vector容器中進行,只有最後重新整理的時候同步到磁碟檔案中。

6 一些函式中設定多個返回值有利於判斷操作的情況。

#ifndef person_h_

#define person_h_

#include class person

;#endif // !person_h_

#include "person.h"

person::person()

person::~person()

int person::operator==(const person& p)

else

return -2;

}

#ifndef list_h_

#define list_h_

#include #include "person.h"

class list

;inline void setout();//輸出格式控制

#endif

#include "list.h"

#include #include #include list::list()

list::~list()

void setout()//輸出格式控制,即左對齊

void list::showfile()

}int list::readfile()

myfile.push_back(p);

rows++;

while(readfile>>p.name>>p.tel)//讀取後存入vector容器中

this->showfile();

std::cout << "total:\t" << rows << "\tinfos\n";

readfile.close();

return rows;

} else

else

outfile.close();

} return 2;

}void list::reflush()

outfile.close();

}void list::add()

void list::del()

std::string name;

std::cout << "please input the name you want you del:\n";

std::cin >> name;

std::vector::iterator iter;

for (iter = this->myfile.begin(); iter != this->myfile.end();)

else

++iter;

} std::cout << "no info matches!\n";

}void list::search()

} std::cout << "no info matches!\n";

}

// contact.cpp : 定義控制台應用程式的入口點。

//#include "stdafx.h"

#include "list.h"

#include #include using namespace std;

int menu()

int _tmain(int argc, _tchar* argv)

cout << "請輸入選項:\n";

cin >> num;

} system("pause");

return 0;

}

通訊錄簡單實現

姓名 性別 年齡 住址 利用構建乙個結構體來儲存資訊,結構體的大小根據所需來自行規定 typedef struct add add typedef struct addnode addnode 關於資訊儲存的方法,最簡單的兩種辦法就是鍊錶跟順序表的結構,簡單說呢就是兩種不同的對資料或者說結構體的應用...

通訊錄的簡單實現!!!

1.因為程式 較多,為了避免程式過於繁雜,將程式分成了兩個.c檔案 contact.c 和 test.c 和乙個contact h檔案。2.cantact.h檔案內容主要包括函式名和結構體的定義。3.contact.c檔案主要用於定義函式的實現,而test.c則主要起到測試的作用1.contact ...

C 通訊錄實現

昨晚實現了用c 編寫通訊錄,深刻的感受到了封裝的便利性啊,vector真是太方便了!如下 info.h ifndef person h define person h include include include using namespace std class info endif info....