Time of Update: 2018-12-04
詳解讀入未知數目的輸入一例#include<iostream>using namespace std;int main(){ int sum=0,value; while(cin>>value)
Time of Update: 2018-12-04
Time of Update: 2018-12-04
#include #include //包含vectorusing namespace std;//指定命名空間int main(){ cout ///////////////////////////////////////////// //定義一個vector ///////////////////////////////////////////// vector vect; vector vect1(12);//12個int類型元素,每個元素的初始值均為0 vector vect2(1
Time of Update: 2018-12-04
#include //----------------------//template function//----------------------template //this line is requiredT power(T base,int e) //you can view T as int or double or sth here.T is an return type{ T result = base; if(e == 0) return(T)1; if(e while(
Time of Update: 2018-12-04
-------------------------------------------Linuxmine收集整理 作者:linux寶庫 (http://www.linuxmine.com) 時間:2006-10-11-------------------------------------------C 是所有版本的UNIX上的系統語言.C 在過去的二十年中有了很大的發展. 在80年代末期美國國家標準協會(American NationalStandards
Time of Update: 2018-12-04
C 語言中 const 關鍵字在修飾普通類型名和指標時存在較大的區別,容易混淆,解析如下:(1)修飾普通類型時,可以與類型名交換位置,二者等價。 const int i; int const i; (2) 在修飾指標時,不可以互換,因為位置不同,意義不同。 const int *p1; int const *p2; 以上二者等價,p1, p2 為指標,指向 const int
Time of Update: 2018-12-04
1. 解構函式和虛解構函式 如果基類的解構函式是虛的,那麼它的衍生類別的解構函式都是虛的 這將導致:當衍生類別析構的時候,它的所有的基類的解構函式都將得到調用 否則,只調用衍生類別的解構函式(這可能導致基類的某些對象沒有得到釋放) 所以CObject類的解構函式是虛的,所有由它派生的類析構的時候一級一級的進行,不會造成記憶體流失。 無論基類的解構函式是否為虛解構函式. 基類的解構函式總是會被自動調用的;但是,
Time of Update: 2018-12-04
最近一直在處理工作表的問題,其間用到了C#讀取表中資料的問題,其方法如下:using Data=System.Data;/// <summary> /// 擷取某個工作表中的資料 /// </summary> /// <param name="fileName">檔案名稱及路徑</param> /// <param name="queryWorkSheetName">查詢的工作表&
Time of Update: 2018-12-04
一、定義: C#可空類型的定義很簡單,一個簡單類型的符號加一個問號即可,如: int? cc 這樣就定義了一個可空類型。二、初始化: 可空類型的初始化與非可空類型的初始化有一個最大的不同就在於可以為可空類型分配null值,比如以下的方法都是可以的: int? cc=10; int? cc=null;(非可空類型絕對不能這樣初始化)三、使用
Time of Update: 2018-12-04
你的任務就是給ToolStrip中的startSimulation和reset按鈕編寫事件處理方法。下面是每個按鈕需要做的事情:1.最開始,第一個按鈕應該寫有“Start Simulation”,點擊它會使得模擬器啟動,並且其上的文本改變為“Pause Simulation”。如果模擬器暫停了,按鈕上的文字應該改變為“Resume Simulation”。2.第二個按鈕應該寫有“Reset”。點擊它的時候,世界應該被重建。如果Timer被暫停了,第一個按鈕的文本應該從“Resume Simula
Time of Update: 2018-12-04
C#在帶來對應用程式的快速開發能力的同時,並沒有犧牲C與C++程式員所關心的各種特性。它忠實地繼承了C和C++的優點。如果你對C或C++有所瞭解,你會發現它是那樣的熟悉。即使你是一位新手,C#也不會給你帶來任何其它的麻煩,快速應用程式開發(Rapid Application Development,RAD)的思想與簡潔的文法將會使你迅速成為一名熟練的開發人員。
Time of Update: 2018-12-04
試運行你已經做了很多工作了。編譯你的代碼,修正所有打字錯誤,然後運行模擬器。看起來怎麼樣? 現在是你把所學的知識付諸實踐的時候了。我們需要讓蜜蜂告訴模擬器他們在做什麼。這時,我們要讓模擬器的狀態列的資訊更新。這次,你不僅要負責編寫代碼,還要負責決定寫什麼代碼。你如何才可以讓模擬器中的某個方法在每次蜜蜂的狀態更新的時候得以調用呢?給你一點協助,我們已經寫出了要添加到表單中去的方法。Bee類可以在每次自身的狀態改變的時候調用它:
Time of Update: 2018-12-04
蜜蜂需要一個新的OutOfHoney異常你的類可以拋出自訂的異常。比如說,如果你在方法接受到了一個null參數,而需要的是一個值,在此處與.NET中的方法拋出一樣的異常是很常見的:throw new ArgumentNullException( );但是有時候你會想要讓程式根據遇到的某種特殊情況來拋出異常。舉例來說,我們建立的蜂窩中的蜜蜂,它們根據自己的體重以不同的速率消耗蜂蜜。如果沒有蜂蜜可消耗了,讓蜂窩拋出異常是很說得通的。你可以建立一個自訂異常來處理這種特殊情況的錯誤,只需要讓你自己的類
Time of Update: 2018-12-04
建立蜂窩模擬器當然,我們還沒有建立過如此複雜的東西,所以我們需要永幾章的篇幅來把所有東西組合起來。在此過程中,你會學到添加timer控制項,LINQ,還有很多圖形編程技巧。下面是你在本章中需要做的(接下來會有更多): ①建立一個Flower類,它會變老,長出花粉,並且最終會枯萎並死掉。 ②建立一個Bee類,它有幾個不同的狀態(在某個花朵上採集花粉,返回蜂巢),並且它會根據其狀態知道要做什麼。 ③建立一個Hive類,它包含有入口,出口,幼蜂培育地,還有把花粉轉化為蜂蜜的蜂蜜工廠。 ④建立一
Time of Update: 2018-12-04
Timer會一次又一次的觸發事件還記得你是怎麼用一個迴圈來驅動獵犬的嗎?其實我們有更好的辦法。Timer是一個特別有用的控制項,它可以一次又一次的觸發事件,每秒鐘可以上千次。如下做:①建立一個有三個按鈕和一個Timer的新項目向表單上拖拽三個按鈕和一個Timer。點擊表單設計器下方的Timer表徵圖把它的Interval屬性設定為1000。這個數字是以毫秒為單位來衡量的--它告訴Timer每秒鐘觸發自己的tick事件一次。②開啟IDE的屬性視窗並點擊事件按鈕Timer控制項只有一個事件,Tic
Time of Update: 2018-12-04
我們來直接跳到代碼。首先,我們需要一個Flower類。Flower類需要一個由Point定義的位置,有年齡,還有壽命。隨著時間的流逝,鮮花會變老。然後,當年齡到達了壽命值的時候,花朵會死去。你的任務就是把這些實現出來。①寫出Flower類的架構代碼下面是Flower類的類圖。寫出基本的類架構,Location,Age,Alive,Nectar和NectarHarvested都是自動屬性。NectarHarvested是可寫的,其他四個都是唯讀。現在把方法留空;我們稍後會回來處理它們。 ②給類
Time of Update: 2018-12-04
Timer在幕後使用一個委託C#和.NET如何告訴Timer每過一個時間段要做什嗎?Timer每次是如何調用timer1_Tick()方法的?我們要像上一章一樣去討論事件和委託了。使用IDE的“轉到定義”功能來複習一下事件處理委託是如何工作的:④右擊timer1變數並選擇“轉到定義”“轉到定義功能”可以讓IDE自動跳到timer1變數被定義的代碼處。IDE將會跳到建立並添加timer1為Form1的屬性的地方。在該檔案中向下滾動,直到你看見下面這一行: ⑤現在右擊EventHandler並選擇
Time of Update: 2018-12-04
真正的代碼是一點一點寫出來的如果可以一次性寫完一個類的代碼,編譯,測試,然後把它放到一邊,再來寫另一個類的話自然是很好的。不幸的是,這是不可能的。通常,你會像我們這一章一樣寫代碼:一點一點的。我們可以建立差不多整個的Flower類,但是到了Bee類的時候,我們就還有一些工作要做(多數就是告訴蜜蜂在每一種狀態之下做什麼)。現在,對於Hive來說,我們需要填充很多空方法。還有,我們還沒有把Bee和Hive聯絡起來。還有一個麻煩問題就是如何成千次的調用Go()方法。 首先設計,然後
Time of Update: 2018-12-04
一個類拋出異常,另一個類捕獲你在建立類的時候並不知道它會怎麼樣的被使用。有時候其他人會以一種導致問題的方式來使用你的類--有時候你自己也會這麼做!這時就用到異常了。拋出異常的目的就是要去發現有什麼問題,以便做一些計劃。一般你不會看到一個方法自己拋出異常並捕獲它。通常是一個方法拋出異常然後另一個方法捕獲--這個方法又通常是另一個對象中的。不要如下這樣做...沒有好的異常處理,一個異常會把整個程式都拖垮。下面是一個沒有異常處理的例子: ...要如下這樣做BeeProfile對象可以截獲異常並寫一條
Time of Update: 2018-12-04
集合是用來收集資料的蜜蜂儲存在一個List內,List是C#的集合類型中的一種。集合只儲存資料...很像資料庫。所以每隻蜜蜂就像一行資料,有著完整的狀態和ID,等等。蜜蜂們作為一個集合是下面這個樣子的: Bee對象的欄位中包含很多資料。你可以把集合中的對象想象為資料庫中的資料行。每個對象把資料儲存在其欄位中,就如同資料庫中的每一行把資料儲存在列中。 多數的集合,尤其是當它們包含資料的時候,可以被想象成數據儲存,就像資料庫一樣。