在线等待:一个C++小程序中的错误修改.

来源:百度知道 编辑:UC知道 时间:2024/09/23 07:44:49
大家看一下下面这个程序,很短,就是编译的时候出现了两个错误,我无法找出错误的原因和该怎么修改,请前辈们指点一下:
#include <iostream.h>
class family
{
private:
char *husband;
char *wife;
char *son;
char *ptr;
public:
void initialize(void);
void output(family *ptr);
}
family Anderson;

main(void)
{
Anderson.initialize();
}
void family::initialize(void)
{
Anderson.ptr=&Anderson;
Anderson.ptr->husband="John Anderson";
Anderson.ptr->wife="Mary Anderson";
Anderson.ptr->son="Joey Anderson";
Anderson.ptr->daughter="Marla Anderson";
Anderson.output(Anderson.ptr);
}
void family::output(family *ptr)
{
cout<<"husband is"<<ptr->husband<<"\n"
<<"wife is"<<ptr->wife<<"\n"
<<"son is"<<ptr->son<<"\

class family
{
private:
char *husband;
char *wife;
char *son;
char *ptr;
public:
void initialize(void);
void output(family *ptr);
} ;//这儿要加个分号

类定义结束要有个分号

下面是完全改好的,你自己对照下吧:
#include <iostream>
#include <string>
using namespace std;
class family
{
private:
string husband;
string wife;
string son;
string daughter;
//string ptr;
public:
void initialize(void);
void output();
};

int main(void)
{
family Anderson;
Anderson.initialize();
}
void family::initialize(void)
{
//Anderson.ptr=&Anderson;
//Anderson.ptr->husband="John Anderson";
//Anderson.ptr->wife="Mary Anderson";
//Anderson.ptr->son="Joey Anderson";
//Anderson.ptr->daughter="Marla Anderson";
//Anderson.outp