請(qǐng)問哪里錯(cuò)了?
#include <iostream>
#include <string>
using namespace std;
/**
?* 定義類:Student
?* 數(shù)據(jù)成員:m_strName
?* 無參構(gòu)造函數(shù):Student()
?* 有參構(gòu)造函數(shù):Student(string _name)
?* 拷貝構(gòu)造函數(shù):Student(const Student& stu)
?* 析構(gòu)函數(shù):~Student()
?* 數(shù)據(jù)成員函數(shù):setName(string _name)、getName()
?*/
class Student {
public:
? ? Student() ;
? ? Student(string _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方式實(shí)例化對(duì)象*stu
? ? Student *stu = new Student();
? ? // 更改對(duì)象的數(shù)據(jù)成員為“慕課網(wǎng)”
? ? stu->setName("慕課網(wǎng)");
? ? // 打印對(duì)象的數(shù)據(jù)成員
? ? cout<<stu->getName()<<endl;
? ? delete stu;
? ? stu = NULL;
? ? return 0;
}
2019-07-16
樓上說的對(duì) ,你沒有{}就相當(dāng)于這是函數(shù)聲明,但是你沒有在其他地方定義所以會(huì)報(bào)錯(cuò),加了{(lán)}就是函數(shù)定義了,{}里面可以是空但是大括號(hào)不能沒有。你的構(gòu)造函數(shù)析構(gòu)函數(shù)應(yīng)該全要加上{}。
2019-06-28
構(gòu)造方法不寫具體方法也要加上{},視頻演示的時(shí)候,因?yàn)轭愂嵌x在頭文件中的,所以只需要規(guī)定方法名和參數(shù),具體在另外一個(gè)文件中實(shí)現(xiàn)該方法
Student(){} ;
? ? Student(string _name){};
? ? Student(const Student&stu){};
? ? ~Student(){};