为了账号安全,请及时绑定邮箱和手机立即绑定

求教代码哪里错了。。

#include <iostream>
#include <string>
using namespace std;
/**
 * 定义类:Student
 * 数据成员:m_strName
 * 无参构造函数:Student()
 * 有参构造函数:Student(string _name)
 * 拷贝构造函数:Student(const Student& stu)
 * 析构函数:~Student()
 * 数据成员函数:setName(string _name)、getName()
 */
class Student{
public:
    Student(){
        m_strName = " ";
    }
    Student(string _name){
        m_strName = _name;
    }
    Student(const Student& stu){};
    ~Student(){};
    void setName(string _name){
        m_strName = _name;
    }
    string getName(){
        return m_strName;
    }
private:
    string m_strName;
}

int main(void)
{
    // 通过new方式实例化对象*stu
    Student *stu = new Student();
    // 更改对象的数据成员为“慕课网”
 stu->setName("慕课网");
    // 打印对象的数据成员
 cout << stu->getName() << endl;
    delete stu;
    stu = NULL;
 return 0;
}

感觉挺正确的啊,不知道哪里出错了。。

正在回答

2 回答

类后面加个分号就好了class{};

0 回复 有任何疑惑可以回复我~

类的定义里三处分号有误:

class Student{

public:

    Student(){

        m_strName = " ";

    }

    Student(string _name){

        m_strName = _name;

    }

    Student(const Student& stu){}  【没有分号

    ~Student(){} 【没有分号 

    void setName(string _name){

        m_strName = _name;

    }

    string getName(){

        return m_strName;

    }

private:

    string m_strName;

};【加上分号


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(上)
  • 参与学习       103410    人
  • 解答问题       701    个

封装--面向对象的基石,本教程力求帮助小伙伴们即学即会

进入课程

求教代码哪里错了。。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信