[分享] Coding & Life
先前在回家的路上跟你一起瞎掰...
已經想po很久了,最近才知道有c_and_cpp版,或許po在這比較合適...?
應該沒有違規吧~就把本文當作複習C++語法吧XD
老師上課講到...假如人生是程式,那麼...
假如每個人的人生都是一個故事,programmer是這故事的全知者。
假如故事是用C/C++語言寫下,g++是故事的編輯者,檢查有沒有語法錯誤,幫它列印,裝
釘成書,於是得到屬於每個人的執行檔...
#include 是引用其他人的故事,或者說是故事的前傳。
main function是故事的主線
故事中,global variable是故事的主角,local variable是主角在各個階段遇到的配角,
配角在主角脫離他的scope後就歸還給記憶體,
static variable是超越scope的配角,
主角可以在任何scope用operator:: 進入class和他聯絡。
operator是人們之間溝通的方式。
function是主角會遇到的支線任務,這些任務可能需要和別人一起完成。
pass by value,是間接地,複製那人的經驗,學習那人的能力,才能勝任這個任務。
pass by reference,是那個人直接和你一起完成任務。
array是一堆對主角有類似影響的人群。
pointer是人們之間的對話紀錄,pointer標記這些對談在主角memory內的位置,
可以將pointer cast成不同的形態去回憶這個memory,但如果memory錯亂,會
segmentation fault,人會崩潰。
就像C++是物件導向,這些故事也是以人為本。//跟司馬遷寫史記一樣
class可以是個人,也可以是群體。
每個人都是一個object,object有它所屬的class,class之間可能有inheritance關係
多個小class也可以集合成一個大class,這就是一個群體。
class的data member就是這個群體的成員,
member function是這個群體會做的事情。
public區域是外界可以觀察到這個群體的範圍,
protected區域是這個群體繼承給他的下一代時的資源,
private區域是這個群體之內的小秘密。
virtual function是base class(爸媽)教小孩(derived class)的一些基礎技能,但小孩
做起來的樣子可能跟爸媽不一樣。
polymorphism(用base class pointer指向derived class memory),就像爸媽讓小孩自由
發展。
-----------
之前老師用local variable來描述人生就有點感傷,離開scope就掰了。
嚴格來說每個人都是local variable,只有自己是global,差別只在scope範圍。
你說我是static,雖然我覺得沒那麼嚴謹(後來發現的確是,妳只記得static不會被
砍而已XD),
但讓我開始想static的意義...
是超越scope的variable,可以在需要時用operator::聯絡。
一想到只是說說而已還是滿感傷的,因為static是programmer定義的,不是variable自己
說的算,唯有我們在不同scope時才能確認這件事。想想應該不太可能...
但這就是人生,嘆~
今天是年夜,僅此,紀念我們曾經一起奮鬥的每一晚
scope將結束,希望新的一年,你能過得更好,每天都有收穫!
過了一年,電資魯宅,還是魯宅阿~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.143.154.199
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1424263731.A.F26.html
推
02/18 22:41, , 1F
02/18 22:41, 1F
→
02/18 23:26, , 2F
02/18 23:26, 2F
推 APE36: 推,可以寫得更寫實一點
再寫實就被發現拉~ 02/18 23:46
推
02/19 00:58, , 3F
02/19 00:58, 3F
推 pizzafan: 已按大F,我想找更多人一起幫忙寫,台版2D的StarCraft啦~
有點猛0.0 02/19 09:20
→
02/19 11:34, , 4F
02/19 11:34, 4F
推
02/19 21:06, , 5F
02/19 21:06, 5F
→ yushiung: 發現自己看得懂有些感動
恭喜 C++博大精深呀~似乎還有其他可以寫的吧? 02/19 21:09
※ 編輯: sunhextfn (223.143.255.61), 02/19/2015 23:10:30
※ 編輯: sunhextfn (223.143.255.61), 02/19/2015 23:17:16
→
02/20 03:30, , 6F
02/20 03:30, 6F
→
02/20 03:31, , 7F
02/20 03:31, 7F
推
02/21 02:44, , 8F
02/21 02:44, 8F
→
02/21 02:46, , 9F
02/21 02:46, 9F
推
02/21 09:57, , 10F
02/21 09:57, 10F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章