标题:谭浩强例9.5运行出错
只看楼主
hmsabc
Rank: 2
来 自:贵州省兴义市
等 级:论坛游民
帖 子:97
专家分:19
注 册:2010-8-2
结帖率:100%
 问题点数:0 回复次数:2 
谭浩强例9.5运行出错
程序代码:
//包含构造函数和析构函数的 C++ 程序
#include <string>
#include <iostream>
using namespace std;
class Student                                      //声明类 Student
{
public:
    Student(int n,string nam,char s)               //定义构造函数
    {
        num = n;
        name = nam;
        sex = s;
        cout<<"Constructor called." << endl;      //输出有关信息
    }
   
    ~Student( )                                   //定义析构函数
    {
        cout <<"Destructor dalled." << endl;}     //输出有关信息

    void display( )                               //定义成员函数
    {
        cout << "num:" << num << endl;
        cout << "name:" << name << endl;
        cout << "sex:" << sex << endl << endl;}
private:
    int num;
    char name[10];
    char sex;
};
int main( )
{
    Student stud1(10010,"Wang_li",'f');                //建立对象 stud1
    stud1.display( );                                  //输出学生 1 的数据
    Student stud2(10011,"Zhang_fun",'m');             //定义对象 stud2
    stud2.display( );                                  //输出学生 2 的数据
    system("pause");
    return 0;
}
我是初学者,在照葫芦画瓢,上面程序运行报错,请高师指点一二!

[ 本帖最后由 hmsabc 于 2010-8-4 11:30 编辑 ]
搜索更多相关主题的帖子: 谭浩强 运行 
2010-08-04 11:00
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
得分:0 
程序代码:
//包含构造函数和析构函数的 C++ 程序
#include <string>
#include <iostream>
using namespace std;
class Student                                      //声明类 Student
{
public:
    Student(int n,char* nam,char s)               //定义构造函数
    {
        num = n;
        name = nam;
        sex = s;
        cout<<"Constructor called." << endl;      //输出有关信息
    }
  
    ~Student( )                                   //定义析构函数
    {
        cout <<"Destructor dalled." << endl;}     //输出有关信息

    void display( )                               //定义成员函数
    {
        cout << "num:" << num << endl;
        cout << "name:" << name << endl;
        cout << "sex:" << sex << endl << endl;}
private:
    int num;
    char* name;
    char sex;
};
int main( )
{
    Student stud1(10010,"Wang_li",'f');                //建立对象 stud1
    stud1.display( );                                  //输出学生 1 的数据
    Student stud2(10011,"Zhang_fun",'m');             //定义对象 stud2
    stud2.display( );                                  //输出学生 2 的数据
    system("pause");
    return 0;
}

改为指针传递就ok了。
不知其所以然的人路过。

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2010-08-04 11:08
hmsabc
Rank: 2
来 自:贵州省兴义市
等 级:论坛游民
帖 子:97
专家分:19
注 册:2010-8-2
得分:0 
回复 2楼 lonmaor
谢谢!
2010-08-04 11:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-314794-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.453584 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved