看板 C_and_CPP 關於我們 聯絡資訊
我看的是Stroustrup的the C++ Programming lang 然後有幾個問題想請教 1.在Chap3 3.11 Advice p.66 裡 第七條 Using string rather than char* 請問即使我對char * 用了簡單的strcat strcpy這些library 會比string 還要來的慢嗎??? 或者是可以說明在處理字串時(就ascii就好了) 什麼時候用string,when to use char*呢? 2.在10.2.8 Structurs and Classes的最後 p.235 他講了一句 allowing many access sepcifiers in a class is useful for machine generated code. 就是他上面有講個例子 public,private可以一直加的 class Data4 { public : ... private : ... public: ... } 這裡的machine generated code是指什麼? 是某些tool產生出的c++ code還是compile完產生的code (IR, assembly, or machine code) 為什麼會useful?? 3. 在10.4.6.2 Member Constants p249 他說可以initialize a static integral constant member 為什麼只有int 可以 float那些為什麼不行呢??? 4.在11.2.3 p265 第一段要結束時他說 it is not possible to define an operator function that operates exclusively on pointers 這是指什麼意思呢 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.29.175
LPH66:4.指的是不能定義一個 operator 其兩個參數都是指標 03/15 03:53
LPH66:即使這兩個指標都是某個 class 的指標也是一樣 03/15 03:54
LPH66:1.我猜他的理由是 buffer overflow... 03/15 03:54
LPH66:2.也許是指機器生成的 C code 吧 不用一開始就一定要把所有 03/15 03:56
LPH66:public/private/protect 的成員都寫在一起 03/15 03:56
ilway25:1. string 有記錄長度,在某些狀況會比 strxxx 快 03/15 09:31