※ 引述《sealoe@kkcity.com.tw》之銘言:
> ※ 引述《Wiseman.bbs@bbs.cs.nthu.edu.tw》之銘言:
> > 太玄了 根本看不懂
> > 有沒有人可以幫忙翻譯一下 .
> > 我想這篇文章的詞彙與邏輯跟我的腦子完全無法對應
> > 可能是因為他使用了前後不相依併行同步處理的多工思考方式
> > 這可是要用多顆大腦同時併行運作並且充份了解CHLL語言的人才有辦法理解
> class A
> {
> int a,b,c;
> int a1,b1,c1;
> fun_a(){
> a = b+c; //快指令
> }
> fun_b(){
> a = b*c; //慢的指令
> }
> fun_c(){
> a1 = b1+c1;
> }
> }
> main(){
> A B;
> B.b = 1;
> B.c = 2;
> B.fun_a();
> B.fun_b();
> B.fun_c();
> }
> 如果是OO並不知道最後a 是哪個 fun_a 或是fun_b的結果 出來不可與其的答案
> 但是因為目前的程式編譯器幫你處理好
> 所以會先執行fun_a 在循序的執行fun_b
> a就會是fun_b的結果
> 也就是編譯器不幫你處理的話 可能因為OO非循序的特性出錯
OO 有非循序特性嗎?
> 不知道我理解的對不對?
如果有這種問題
那用不用 OOPL 都一樣啦
反正這麼說來寫了循序敘述,也可能非循序執行
那跟我直接把
a = B.b+B.c;
a = B.b*B.c;
a1 = B.b1+B.c1;
寫在 main 裡面不是一樣?
還是可能會發生同樣問題啊
一般人看到以上程式不會想那麼多(包括我)
程式就只是依序執行
B.fun_a();
B.fun_b();
B.fun_c();
而已
不必講得多複雜吧
那個循序不循序根本就不是 OOPL 的問題
難怪很多人講到後來都懶得講了...
--
@, ●秘密情人● (bbs.cse.ttu.edu.tw)
~\ ◆ Post From: 61-70-137-117.adsl.static.giga.net.tw ◆