re: 繼承!如何繼承? TheAnswer 2008-08-29 21:54
傳A的引用作為參數
const char * const STR_TEST = "Hello world!";
前面那個const可以去掉的 效果一樣的
re: VC6.0 vs VS2005 TheAnswer 2008-04-18 10:30
@yanvenhom
建議你使用機器語言編程 才能接觸到編程的本質
re: const的作用 TheAnswer 2008-01-14 05:44
隨便說幾點。
1.const是C++中的關鍵字,C中的const是鑒戒C++定義的關鍵字,但是C中的const與C++比退化的很厲害,幾乎就是沒啥用。
2.從語義上來講,函數參數中的指針不應該用const修飾,既然用指針傳遞,就應該意味著參數會被修改,如果函數體不修改參數,應該用const引用或者傳值。
3.函數返回值的時候,需要區分是否為內置類型,內置類型的返回值是一個右值,可以保證其不會被修改,但是返回自定義類型的時候,如果不加const,函數返回值是可以被賦值的,雖然不符合常理,但是語法上是沒問題的。
例如 A func(int);
func(3) = A();
編譯完全可以通過,你可以試一下。 :)
re: iterator_traits( 轉) TheAnswer 2008-01-14 05:33
C++中左值的含義是編譯時可知,關注的是對象的地址。
re: C++ 心得 TheAnswer 2008-01-11 18:23
hoho 都是從Scott Meyers的書上援引的吧
static const double ASPECT_RATIO = 1.653;
這句中的static是多余的,const默認就是內部鏈接的 :)
re: 關于宏定義和內聯函數的學習 TheAnswer 2008-01-10 14:06
hoho 這個話題我也寫過一篇
http://www.shnenglu.com/theanswerzju/archive/2007/12/24/39461.html
re: 數據結構隨筆1(堆棧) TheAnswer 2007-12-31 15:51
隱式類型轉換并非拷貝構造函數造成的,而是單參數的構造函數造成的
re: 堆和棧的區別 TheAnswer 2007-12-31 15:47
部分細節不夠嚴謹,總體不錯
new小內存,系統一般會圓整為2的冪來分配,內存占用多些很正常的。
re: C++中的內存對齊[未登錄] TheAnswer 2007-12-22 21:58
各成員變量存放的起始地址相對于結構的起始地址的偏移量必須為該變量的類型所占用的字節數的倍數。各成員變量在存放的時候根據在結構中出現的順序依次申請空間,同時按照上面的對齊方式調整位置,空缺的字節自動填充。同時為了確保結構的大小為結構的字節邊界數(即該結構中占用最大空間的類型所占用的字節數)的倍數,所以在為最后一個成員變量申請空間后,還會根據需要自動填充空缺的字節。
這樣不是已經很清楚了嗎,不用寫這么長吧。