請問哪里錯了
#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();
? ? Student(string _name);
? ? Student(const Student&);
? ? ~Student();
? ? void setName(string _name);
? ? string getName();
private:
? ? string m_strName;
};
Student::Student()
{
? ? m_strName="";
}
Student::Student(string _name)
{
? ? m_strName=_name;
}
void Student::setName(string _name)
{
? ? m_strName=_name;
}
string Student::getName()
{
? ? return m_strName;
}
int main(void)
{
? ? // 通過new方式實例化對象*stu
? ? Student *stu = new Student;
? ? // 更改對象的數據成員為“慕課網”
stu->setName("慕課網");
? ? // 打印對象的數據成員
cout<<stu->getName()<<endl;
delete stu;
stu= NULL;
return 0;
}
2018-07-30
? ~Student(){};
析構函數錯了
2018-07-07
應該是少定義了兩個構造函數
Student::Student(const Student& stu)
{
? ? cout<<"Student(const Student& stu)"<<endl;
}
Student::~Student()
{
? ? cout<<"~Student()"<<endl;
}
還有第一個構造函數錯了
Student::Student()
{
? ? m_strName="";
}
2018-07-07
Student *stu = new Student;? ?//應該是 Student *stu = new Student();