作者chchwy (mat)
看板OOAD
標題[問題] C也可以寫得很OO
時間Thu Jul 31 22:20:48 2008
想請教一個問題
偶爾在其他版上會聽到這麼一句話
「C也可以寫得很OO」
這句話我百思不得其解
C要怎麼OO ?
我大概瞭解OO是一種思考的方式
因為上面那句話常常拿來諷刺某人寫OO程式
只學到型式沒學到精神
但是OO的三個特性 封裝、繼承、多型,C都沒有內建
真的有辦法做到嗎?
先感謝各位回答的大大了<(_ _)>
--
---- chchwy <批兔個人版> ptt2.cc
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.173.230
2F:推 a1234957 :沒有內建,也可以做得到吧… 08/01 00:03
3F:推 cipherman :以polymorphism來說,可以用function pointer來做 08/01 00:06
4F:→ cipherman :我記得市面上有書在教吧,作者好像是高煥堂 08/01 00:07
5F:→ tinlans :OO 只是概念,語言支援是因為有需求,而在有使用 OO 08/01 00:37
6F:→ tinlans :需求的狀況下,用不支援的語言也還是有辦法實現概念 08/01 00:37
7F:推 abcdefghi :你可以參考 Xlib 和 Linux kernel, 如果你要考慮到OO 08/01 01:54
8F:→ abcdefghi :的定義, 一般用 C 都最多只實現 Object Base, 不會到 08/01 01:55
9F:→ abcdefghi :Object-Oriented. 08/01 01:55
10F:推 abcdefghi :要諷刺某人沒學到OO精神, 我應該會講 "只是把C compi 08/01 01:58
11F:→ abcdefghi :ler換成C++ compiler而已", 你提的那句話, 我會用在 08/01 01:59
12F:→ abcdefghi :某人沒充份的理由就想把本來用 C 的project換成 C++. 08/01 02:02
13F:推 JavaLinux :其實VB也能做到趨近於OO XD (不要打我) 08/08 10:18
15F:推 sunneo :以前我曾想到這麼做 等到做完後才發現早就有人作了 08/18 01:13
16F:→ sunneo :Orz 08/18 01:13