2011年8月21日 星期日

[C&C++ NOTE] 類別

處理物件時要使用直接成員存取運算子 (.),處理指向物件的指標則要使用間接成員存取運算子(->). 而 this  是一個指標, 因此使用間接成員存取運算子(->)。

當處理結構時,運算子(->) 的運作就像指向類別物件的指標。此時使用 this 指標表示 this 指標的確存在,而且的確在運作,但其實此範例是不必使用 this 的。若將 compare()函式的 return 敘述改寫為
return this->Volume() > xBox.Volume() // 之前
return Volume() > xBox.Volume()
參考任何未經裝飾的成員名稱時,將自動假設有指向此物件的 this 指標。


 
  

2011年8月20日 星期六

花蓮行


在大前天的晚上我看到臉書上的留言就實在沒辦法不出來面對, 以前研究所的同學一直說我不要嘴炮說要來花蓮, 結果一直不來. 當然我看到這種留言一定要給予回應, 但一回應就沒辦法再講理由了, 所以馬上決定隔天直接殺到花蓮, 隨便整理了一些行李就在晚上2200點多衝去買票, 當然早上10點的火車中午就到花蓮囉~

        一到花蓮前來迎接我的是杜老爺, 實在太棒了 馬上就和他去充滿回憶的香人去吃中餐, 我直接就點了煎餃和牛丼飯來大快朵怡, 我們在吃完後就去阿杜的宿舍放一下行李然後開始聊這一年實驗室發生的八卦丫, 真的太多八卦了 也實在讓我大吃一驚的是女王跟花花的事情, 在花花這一年當中與女王之間的曖昧實在太多了 而且有非常多的證劇都可以看得出來兩人跟本就是已經在一起了嘛

        這次阿杜真的是太給力了 從頭到尾就是一直招待我 找了一些好吃的店跟我來分享 第一天的晚上阿杜先找實驗室的學弟妹們跟智和我去吃北觀, 當然在過程當中邊吃邊聊的實在是很開心 好像又回到我還在花蓮唸書的時間, 第二天我們又去吃了一家阿杜推廌的合菜 叫做~~~忘了耶 哈哈 說真的這家餐廳也是很有花蓮的風格 在裡面也是非常多人 不訂位的話應該是沒有位子的 我們在這裡吃的也是很盡興 只能說真的很不錯 菜色 味道 服務都算是一流的 只是對我這個味覺有問題的人說味道真的有點不夠力 但這樣看來連我都覺的特別好吃的話是不是應該更要相信我呢, 反正這三天多虧有了阿杜跟小光 讓我過了一個很好的花蓮行.

2011年8月15日 星期一

yuan 上班的第一天~

今天是到職日, 感覺主管和同事都還滿好相處的,

沒有太多事情, 只是在過程中有一些問題都不太知道怎麼解決,

只好請教同事 接下來一定要再認真一些 否則很多問題都沒辦法解決了

接下來有空一定要開始把 VC++和 MFC 看熟丫 否則一定會出問題的

再充實自己丫~~






2011年8月10日 星期三

一個 Win32 程式








Windows 95  程式設計指南(Windows 95  A Developer’s Guide

當系統執行這個程式時,會為它產生㆒個新的行程(process),這個行程不多不少㆞擁有 4GB 虛擬位址空間。

之後,行程位址空間㆗便擁有了這個行程的執行檔動態聯結函式庫所要用到的程式碼和資料。系統會為這個行程產生㆒個主執行緒(primary  thread)。

當㆒個新的行程誕生,系統同時也會為它產生㆒個新執行緒(稱為行程的主執行緒)。系統首先會初始化這個執行緒,主要目的是告知程式碼在行程位址空間㆗開始執行的位址。通常,主執行緒會被告知以  C-Runtime startup code 做為開始。
C-Runtime  startup  code  承擔著 C-Runtime 系統元件初始化的工作,使你在程式㆗使用的任何函式(像是 malloc signal)得以正確運作,。C-Runtime startup code  被初始化後,程式便可開始執行。程式進入點是 WinMain  函式,型式如㆘:

int WINAPI WinMain (HINSTANCE hinstExe, HINSTANCE hinstExePrev,
                        LPSTR lpszCmdLine, int nCmdshow)


C-Runtime startup code  會呼叫你的 WinMain 函式,並傳入㆖述㆕個參數。從我們(程式員)的觀點來看,這就是程式開始執行的㆞方。如果你的  WinMain  函式如㆘:
int WINAPI WinMain (HINSTANCE hinstExe, HINSTANCE hinstExePrev,
                        LPSTR lpszCmdLine, int nCmdshow) {
   return(0);
}
此函式沒有做任何動作,也沒有產生任何視窗,㆒開始執行就結束了。當 WinMain 函式結束,行程的主執行緒便會返回到 C-Runtime startup code,開始做善後清理的工作(也就是釋放㆒些資料及記憶體),接著 C-Runtime  startup  code  會呼叫 Win32 ExitProcess函式,終止主執行緒。於是行程結束,而此行程的 4GB 位址空間內的程式碼和資料將完全被破壞。



㆒個行程就是㆒個執行個體(instance)。舉個例,你可以寫㆒個程式,檔名叫做 MyApp.EXE。假如你執行它七次,系統會為它建立七個行程,每㆒個行程有自己獨立的 4GB 虛擬位址空間,其程式碼、資料、以及它所用到的動態聯結函式庫(DLLs),都將被載入到每㆒行程的虛擬位址空間㆗


2011年8月9日 星期二

father's day


Today is happy father’s day; anyone says he want to eat beef roll in Costco warehouses. I hope today will be just the beginning.