廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 4287 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
翁賜維
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[C/C++][求助] 麻煩神人解惑一下!!
上面是程式碼 !

想請問一下類別裡的  enum={LIM=20};

1.
這裡宣告enum 為啥不用給他名稱啊??
還有,這樣宣告LIM = 20 有什麼優點或是缺點啊??
是因為在類別裡才用到enum嗎 ??
這跟在main裡宣告const  LIM = 20   是否是一樣的道理啊??

2.
如果用strcpy()函式跟用strncpy()函式有什麼不同??
那一種比較好??

麻煩解惑一下嚕^^ 謝謝!!


#include<iostream>
#include<cstring>
using namespace std;

class Tabtenn
{
private:
enum{LIM=20};
char firstname;
char lastname;
bool hasTable;
..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容




獻花 x0 回到頂端 [樓 主] From:台灣教育部 | Posted:2010-05-26 20:32 |
n9205t84
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x14
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

您好以下資料提供您參考
1.用enum定義出來的東西被當成一個新的型態,就像用struct定義一樣
所以理所當然編譯器不知道要怎麼做運算
如果你有運算需求,要自己提供operator的定義
enum的意義本來就是列舉、識別,通常沒有做運算的必要
如果你需要做運算請用const

2.而至於strncpy跟strcpy則是
strncpy需要傳入三個參數第三個參數就是size如果超過這個大小後就不會複製但缺點就是他不會幫忙補上'\0'結數字元
所以複製完通常要自行加上'\0'
而strcpy則沒那麼嚴謹直接傳目的跟來源就做複製動作所以可能來源資料大於目的的容量出現錯誤或當機的狀況!!

以上是根據手邊知料大致消化後的認知如有部隊的地方還請提點指教!! ^^


獻花 x0 回到頂端 [1 樓] From:台灣中華電信 | Posted:2010-12-18 19:05 |
csr
個人文章 個人相簿 個人日記 個人地圖
小有名氣
級別: 小有名氣 該用戶目前不上站
推文 x0 鮮花 x898
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

看完n9205t84大大解說
了解一時平常的疑惑
謝謝


獻花 x0 回到頂端 [2 樓] From:局域網對方和您在同一內部網 | Posted:2010-12-21 13:30 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.067510 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言