c++应用问题

来源:百度知道 编辑:UC知道 时间:2024/07/05 15:08:31
class client
{
public:
client(){nameptr=NULL;telnum=NULL;ID=0;}//构造函数
void update(char *thenameptr,int *thetelnum);
void changename(char *thename);
void changetelnum(int *thenumber);
int* gettelnum(){return telnum;}
int getID(){return ID;}
bool isthisclient(char *thename);
static int listnum;
void savetodoc(ofstream ofs);
void getdatafromdoc(ifstream ifs);
private:
char *nameptr;
int *telnum;
int ID;

};
void client::savetodoc(ofstream ofs)
{
ofs.open("telbook.txt",ios_base::out);
ofs<<"编号:"<<ID<<' '<<"姓名:";
ofs.write(nameptr,20*sizeof(char));
ofs<<' '<<"电话号码:";
ofs.write((char*)telnum,8*si

什么题目呀,怎么只给个程序?

据目测没看出来语法错误,除非int main()的“}”真的是被你忘记了。

什么问题呢? 我猜,我猜,我猜猜猜!

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

class client
{
public:
client(){nameptr=NULL;telnum=NULL;ID=0;}//构造函数 但是你没写析构函数,默认的析构函数会造成内存泄露
void update(const char *thenameptr,const char *thetelnum);//char[] == const char*
void changename(const char *thename);
void changetelnum(const char *thenumber);
char* gettelnum(){return telnum;}
int getID(){return ID;}
bool isthisclient(const char *thename);
static int listnum;//这个值你忘记初始化了,但我不知道这个值是干什么的,不是已经有ID了么
void savetodoc(ofstream& ofs);
void getdatafromdoc(ifstream ifs);
private:
char *nameptr;
//int *telnum;//这里没必要使用int*
char* telnum;