亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

我的代碼哪里有問題

以下是有問題的代碼

2.cpp

# include <iostream>

# include<stdlib.h>

# include<string>

# include "Teacher.h"

using namespace std;

int main(void)

{

Teacher t1("Merry", 12, 150);

cout << t1.getName() << " " << t1.getAge() << " " << t1.getMax() << endl;

system("pause");

return 0;

}

Teacher.h

#include<iostream>

#include<string>

using namespace std;

class Teacher

{

public:

Teacher(string name = "Jim",int age = 1,int m = 100);

void setName(string name);

string getName();

void setAge(int age);

int getAge();

private:

string m_strName;

int m_iAge;

const int m_iMax;

};

https://img1.sycdn.imooc.com//5b6502640001ffb307320165.jpg


正在回答

2 回答

你的私有成員都沒有的得到有效的賦值傳遞,函數構造里面都是把值默認給了name,age,這些并不是你定義的變量,函數那些好像也沒實現。Teacher(string name = "? 默認",int age = 1, int max = 100){m_strName = name;m_iAge = age, m_iMax = max;}如果還有錯,就把set和get函數實現了,比如int getAge(){return m_iAge;}? ? ? void setAge(int age){m_iAge = age;}類推,把name函數和max函數全部實現,建議簡單的函數直接在Teacher.h文件里一并實現,你也可以重新創建一個.cpp但是在里面要導入.h頭文件

0 回復 有任何疑惑可以回復我~
#1

慕運維9949243 提問者

感謝!
2018-08-08 回復 有任何疑惑可以回復我~

m_iMax 沒有定義set 和 get

0 回復 有任何疑惑可以回復我~
#1

慕運維9949243 提問者

我定義了后又出現更多錯誤了,我寫的代碼和老師寫的一樣
2018-08-05 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之封裝篇(上)
  • 參與學習       103391    人
  • 解答問題       732    個

封裝--面向對象的基石,本教程力求幫助小伙伴們即學即會

進入課程

我的代碼哪里有問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號