討論區快速選單
知識庫快速選單
網路投保旅行平安險 政府補助!學嵌入式+物聯網 傑米的攝影旅遊筆記
[ 回上頁 ] [ 討論區發言規則 ]
c++問題
更改我的閱讀文章字型大小
作者 : steve2003121(鍾齊)
[ 貼文 16 | 人氣 7705 | 評價 0 | 評價/貼文 0 | 送出評價 1 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/1/13 下午 03:11:05
為什麼下面程碼會錯呢
#include<iostream>
#include<string.h>
using namespace std;

class student
{
public:
student (char* str,int a,int b,int c,int d,int e);
void show();
private:
char*name;
int id,chi,eng,math,cs;
}
student::student(char* str,int a,int b,int c,int d,int e)
{
strcpy(name,str);
id=a;
chi=b;
eng=c;
math=d;
cs=e;
}
void student::show()
{
cout<<name<<endl<<id<<endl<<chi+eng+math+cs;
}
int main()
{
int i;
student a[3]={student("steve",1,95,100,95,100"),student("henry",2,91,80,90,85),student("how",3,75,66,58,90)};
for(i=0;i<3;i++)
{
a[i].show();
}
return 0;
}
作者 : akasan(akasan)
[ 貼文 147 | 人氣 1174 | 評價 470 | 評價/貼文 3.2 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/1/13 下午 11:35:48

你忘記給name new記憶體了
作者 : sflam(Raymond)討論區板主 Visual C++ .NET卓越專家VC++一代宗師新手入門優秀好手資訊類作業求救頂尖高手C++一代宗師貼文超過4000則
[ 貼文 4944 | 人氣 9172 | 評價 32280 | 評價/貼文 6.53 | 送出評價 142 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人steve2003121註記此篇回應為最佳解答 2008/1/14 上午 07:08:16
>為什麼下面程碼會錯呢
>#include<iostream>
>#include<string.h>
>using namespace std;
>
>class student
>{
> public:
> student (char* str,int a,int b,int c,int d,int e);
> void show();
> private:
> char*name;

這裡, 成員 'name' 不是字串, 它只是個指標. 建議用 std:string.  需要標準頭檔 <string>

> int id,chi,eng,math,cs;

建議用命名法把成員物件跟非成員物件分開來. 比方說在成員物件名字前加置 m_ 或在後面加置 _. 如:

  int m_id;

或:

  int id_;


>}
>student::student(char* str,int a,int b,int c,int d,int e)

建議:
  1. 不要用沒有意義的名字來做變數或參數名稱.
  2. 用 initialize list 來初始化成員物件.
  3. 如果不打算更改參數的值, 加個 const 修飾詞.

假定所有成員物件的名字前面有 m_:

  student::student(const char *name, const int id, const int chi, const int eng, const int math, const int cs)
  : m_name(name)
  , m_id(id)
  , m_chi(chi)
  , m_eng(eng)
  , m_math(math)
  , m_cs(cs)
  {
    // Empty body
  }

>{
> strcpy(name,str);
> id=a;
> chi=b;
> eng=c;
> math=d;
> cs=e;
>}
 板主 : Clark
 > 物件導向程式設計 - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - 物件導向程式設計 - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
物件導向程式設計
1 Arthur 180 
2 藍色LED 150 
3 長長 100 
4 Linkin 100 
5 love seeker 100 
6 Raymond 90 
7 Nets 80 
8 nop 70 
9 Huah 70 
10 矇矇 60 
物件導向程式設計
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.046875