下面VC编译无错怎么运行不了

来源:百度知道 编辑:UC知道 时间:2024/06/01 19:55:06
#include <iostream>
#include <string>
using namespace std;
class Student
{public:
Student(int n,string nam,char s)
{num=n;
name=nam;
sex=s;}
~Student(){}
protected:
int num;
string name;
char sex;
};
class Student1:public Student
{public:
Student1(int n,string nam,char s,int a,string ad):Student(n,name,s)
{age=a;
addr=ad;
}
void show()
{cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl;
cout<<"age:"<<age<<endl;
cout<<"address:"<<addr<<endl<<endl;
}
~Student1(){}
private:
int age;
string addr;
};
int main()
{Student1 stud1(10010,"wang-li",'f',19,"115 Beijing Road,Shanghai");
Student1 stud2(10010,"Zhang-fun",'m',21,"213 Shanghai Road

Student1 stud1死了

Student1(int n,string nam,char s,int a,string ad):Student(n,name,s)
=====
Student1(int n,string nam,char s,int a,string ad):Student(n,nam,s)

你弄成name = name。
建议成员变量以m_开始,如m_name

这样 改:

Student1(int n,string nam,char s,int a,string ad):Student(n,/*name*/nam,s)
{
age=a;
addr=ad;
}

只能说楼主你的命名习惯非常不好!