注册 登录
编程论坛 C++教室

通讯录管理系统 我这残次的 而且漏洞百出 大侠指点啊

hao136913540 发布于 2011-12-28 16:19, 713 次点击
#include <iostream>
#include <string>
#include <fstream>
using namespace std;



class tongxun//类名
{
public:
    tongxun();
    string name;//姓名
    void xianyou();//现有人员函数
    void searchname();//查找人员
    void zengjia();//增加函数

};


tongxun m;//对象
fstream wenjian;//默认的文件
string   name="zhang";  
string   y="18748192863";
string   dizhi="shangyuan";



tongxun::tongxun()
{
   
}

void tongxun::searchname()//查找人员
{


   
   
    wenjian.open("w_1",ios::in);


    wenjian<<name;
   
    wenjian<<y;
   
    wenjian<<dizhi;
    cout<<"请输入联系人姓名:"<<endl;
   
    string name_1;
    cin>>name_1;
    if(name_1==name)
        cout<<name<<endl<<y<<endl<<dizhi<<endl;
    else
        cout<<"nobody"<<endl;
    wenjian.close();
}
void tongxun::zengjia()//增加人员
{

   
   
    wenjian.open("w_1",ios::in);
    cout<<"请输入姓名"<<endl;
    cin>>name;
    wenjian<<name;
    cout<<"请输入号码"<<endl;
    cin>>y;
    wenjian<<y;
    cout<<"请输入地址"<<endl;
    cin>>dizhi;
    wenjian<<dizhi;
    cout<<"已存储"<<endl;
    wenjian.close();

}

void tongxun::xianyou()//现有人员
{

   
    wenjian.open("w_1",ios::out);
    cout<<name<<endl<<y<<endl<<dizhi<<endl;
    wenjian.close();

}


////////////////////////////////////////////////////////////

int  main()//主函数
{
    int n;

    for(;;)
    {

        cout<<"输入操作序号\n"<<"1.查看联系人\n"<<"2.查找联系人\n"<<"3.增加联系人\n"<<endl;//输入判断
        cin>>n;
        if  (n==1)
            m.xianyou();
        else
            if
                (n==2)
                m.searchname();
            else
                if
                    (n==3)
                    m.zengjia();
                    else
                    cout<<"error"<<endl;
    }
    return 0;
}
3 回复
#2
我是菜鸟C2011-12-28 18:23
查找里面至少要有一个循环吧,。。
新增那里也是,你这个是要写入到文件对吧,必须要write()才能写入进去吧。
#3
chanbo2011-12-28 21:02
回复 楼主 hao136913540
已经定义“tongxun”对象为“m”,再对其中函数进行实现时应如下m::tongxun(){};其二对流操作时没有考虑文件打开失败的情况,应使用“if”语句进行验证。再提一个不重要的:这个……在定义名称时尽量少用汉语拼音,显得很掉价唉!
#4
chanbo2011-12-28 21:06
回复 3楼 chanbo
用手机打这么多字……累死我了……
1