已采納回答 / onemoo
從語法上說:函數(shù)只要聲明了就可以使用(調(diào)用它),所以 cpp 文件只要 include 相應(yīng)的函數(shù)頭文件(頭文件中就是函數(shù)聲明)就可以使用這個函數(shù),并不需要知道函數(shù)的實現(xiàn)。那么你是好奇“為什么代碼中沒有實現(xiàn)也可調(diào)用呢”? 這需要你明白什么是“編譯”和“鏈接”:函數(shù)還是需要實現(xiàn)的,不過那是實現(xiàn)在其他 cpp 文件中的。像這樣由多個 cpp 構(gòu)成的程序,其中每個 cpp 文件都是被編譯器單獨編譯的。每一個 cpp 文件被稱為一個“編譯單元”。 注意編譯器無需得知函數(shù)實現(xiàn)即可編譯函數(shù)調(diào)用,它只要知道函數(shù)聲明(需...
2017-09-17
已采納回答 / 慕神4146798
Teacher::Teacher(string?_Name,int?_Age=0){????m_strName?=?_Name;????m_iAge?=?_Age;}這樣就可以了,因為你的_Age沒有默認值,一定要傳值,不然就會出錯
2017-08-06
已采納回答 / 一半123
Teacher.h和Teacher.cpp是屬于分文件定義的,執(zhí)行demo.cpp時只需要調(diào)用#include"Teacher.h"就可以了
2017-07-17
已采納回答 / 基本無解大公雞
getName函數(shù)和getGender函數(shù)不需要傳參數(shù)啊,目的是獲取類的屬性,傳參數(shù)沒什么用,你函數(shù)里也沒用到傳進來的參數(shù)
2017-07-13
已采納回答 / 慕娘0545655
根據(jù)函數(shù)內(nèi)需要返回的變量的類型來決定函數(shù)返回值的類型,比如?int ?swap(int &a, int &b){?int temp = a;?a = b;?b= temp;?return ?temp; ?// 返回的值是int型,所以函數(shù)返回類型就是int型}不需要返回值的函數(shù)就用void?
2017-07-06
已采納回答 / qq_晨曦Flame_04116129
如果有了using namespace std;就應(yīng)該用#include <string> 而不是#include<string.h>
2017-06-22
已采納回答 / 慕虎0549817
慕課的編譯器畢竟是簡易的,無法接受一些舊的寫法之類的,就像我們學(xué)校的OJ平臺同樣無法像VS2012那么好用,你代碼發(fā)上來我們大家看看具體什么問題吧
2017-05-26
已采納回答 / 大力出奇跡丶
str指針指向的是一個類Student,而不是字符數(shù)組,所以可以直接寫delete str;個人認為delete str;只是把之前申請的,str所指向的內(nèi)存區(qū)域歸還給了系統(tǒng),并沒有刪除str指針,賦值NULL是為了防止str指針指向其他“不可描述”的區(qū)域,例如一些存放系統(tǒng)配置的區(qū)域,造成程序崩潰
2017-05-26
已采納回答 / 慕粉2230345995
定義成員函數(shù)前要加類名::void Teacher::setname(string _name){? ? m_strName = _name;}?string Teacher::getname(){? ? ? ? return m_strName;}?void Teacher::setage(int _age){? ? m_iAge = _age;}?int Teacher::getage(){? ? return m_iAge;}?
2017-05-24