C 之物件導向

2021-09-01 05:54:26 字數 1907 閱讀 4501

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!

話說三國時期,曹操帶領百萬大軍攻打東吳,大軍在長江赤壁駐紮,軍船連成一片,眼看就要滅掉東吳,統一天下,曹操大悅,於是晏眾文武,在酒席間,曹操詩興大發,不覺吟道:「喝酒唱歌,人生真爽」,眾文武其呼:「丞相好詩!」於是一臣子速命印刷工匠刻版印刷,以便流傳天下。樣本出來給曹操一看,曹操感覺不妥,說道:「喝與唱,此話過俗,應改為『對酒當歌』較好!」,於是此臣就命工匠重新來過,工匠眼看連夜刻版之工,徹底白費,心中鬱悶,只得照辦。樣本再次出來請曹操過目,曹操細細一品,覺得還是不好,說:「人生真爽太過直接,應改問語才夠意境,因此應改為『對酒當歌,人生幾何?』」當臣轉告工匠之時,工匠**身亡!可惜三國時期活字印刷術還未發明,所以類似事情是有發生,如果有了活字印刷,則只需更改個別字即可,實在妙哉。

所以說,四大發明之活字印刷是物件導向的勝利,世界上的萬事萬物都是有聯絡的,活字印刷是如何和我們的物件導向進行完美結合的呢?第一,要改,只需更改要改之字,此為可維護;第二,這些字並非用完這次就無用,完全可以在後來的印刷中重複使用,此乃可復用;第三,此詩若要加字,只需另刻字加入即可,這是可擴充套件;第四,字的排版其實有可能是豎排也有可能是橫排,此時只需將活字移動就可做到滿足排列需求,此為靈活性。但是在活字印刷術之前,上面的四種特性都無法滿足,要修改,必須重刻,要加字,必須重刻,要重新排列,必須重刻,印完這本書後,此版已無任何可在利用的價值。

由上述故事,想到在敲學生管理系統和機房收費系統的時候,為實現某個功能的時候,我們的直覺是用計算機能夠理解的邏輯來描述和表達待解決的問題及具體的求解過程,這個其實是用計算機的方式去思考問題,比如說機房收費系統中,上機這個小功能,邏輯思維如下所示:

根據我們的邏輯思維進行相應判斷,得到我們想要實現的上機這個小功能,這個過程本身沒有錯,但是這樣的思維卻使得我們的程式只為滿足當前的需求,缺少靈魂,這樣的軟體做出來是不規範的,不易維護的,不易擴充套件的,以及不易復用的。那麼物件導向到底是什麼?有著怎樣神奇的面孔,接下來,我們翻開嶄新的一頁:

物件導向的知識,前面的博文中有相關介紹,再此不在一一贅述,總的來說物件導向的主要優點以及與面向過程有著那些不一樣的地方,如下:

物件導向程式設計中有兩個重要概念,class和object,以及omt和物件導向的三個基本特徵,具體介紹如下:

//宣告乙個判定密碼是否正確,並能夠更改密碼的類                    public

bool

changepassword(string oldpassword, string newpassword)//在類中宣告更改密碼的方法 

else

return

false;             }

將類例項化

class

program           }

我們再來舉個小例子,具體詳細講述類的建立:

[《訪問說明符》] [《修飾符》] class

//body of class

其中class是c#建立類所使用的關鍵字;是類的名稱;是類的成員,主要包括屬性和方法!c#之旅,未完待續......

給我老師的人工智慧教程打call!

C 之物件導向 上

物件導向 上 一,引用的應用 swap.cpp include using namespace std int main void void swap1 int a,int b 傳遞的是實參a,b的複製,也就是副本 void swap2 int a,int b 傳遞的是實參a,b的位址 void s...

C 學習雜記之 物件導向

1 物件是類的乙個例項 instance 重要的是類的設計而不是物件的設計,類要注重行為的設計而不是資料 的設計,所以類中先public 成員函式。2 繼承與程式復用性的關係 1 b繼承a,則b必須是a的一種 如果b是a的一部分,則不允許b繼承a的功能 2 通過繼承,實現了後來寫的程式可以使用以前寫...

C 基礎之物件導向(二)

友元函式 1 一般在操作符過載時會使用,其他情況很少使用。2 在a類中宣告函式b是a類的友元函式,則函式b可以訪問a的資料成員。3 友元函式至少有乙個引數 這個引數為宣告類的引用 因為 全域性函式是沒有this指標的,我們只能通過引數來確定訪問的是那個物件的資料成員 如果全域性函式找不到this指標...