[問題] 存字串 用 string,char[] 到底哪個好?

看板C_and_CPP (C/C++)作者 (番茄汁)時間10年前 (2015/10/03 08:50), 編輯推噓6(604)
留言10則, 7人參與, 最新討論串1/1
想請問 存字串用 string 好 還是 char[] 好 ? char a[]="abc"; string b="abc"; 既然兩種都能做同樣的事情 為什麼 C++ 還要創一個 string 呢? 有查了一下書 想問問大家 我的看法正不正確 -- char[] string 空間 節省 較多 ( 因為是class? ) 功能 無 方便 ( 字串.好多功能 ) -- 現在在懊惱 什麼時候用 char a[] 什麼時候用 string a -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.64.91.23 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1443833423.A.1BB.html

10/03 09:18, , 1F
可以用 string 就用 string
10/03 09:18, 1F

10/03 09:31, , 2F
string 與 char[] 根本是完全不同的東西, 只有在處理
10/03 09:31, 2F

10/03 09:32, , 3F
某些特殊狀況時才會「可以做到一樣的事」
10/03 09:32, 3F

10/03 09:39, , 4F
char[]使用起來比較自由
10/03 09:39, 4F

10/03 11:09, , 5F
C++字串請用string,除非是特殊場合
10/03 11:09, 5F

10/03 12:08, , 6F
你可以去參考 effective STL這本書
10/03 12:08, 6F

10/03 13:46, , 7F
string是一個class,char[]是基本類型的陣列
10/03 13:46, 7F

10/03 13:48, , 8F
string底層也是用char[]來當作實現,但是string多很
10/03 13:48, 8F

10/03 13:53, , 9F
多實用的方法和operator,例如str1+str2之類的
10/03 13:53, 9F

10/03 18:16, , 10F
char要自己管理記憶體啊…XD
10/03 18:16, 10F
文章代碼(AID): #1M3oPF6x (C_and_CPP)
文章代碼(AID): #1M3oPF6x (C_and_CPP)