目前分類:程式語言 c++ (119)

瀏覽方式: 標題列表 簡短摘要

以class_name(初始值1,初始值2,...初始值n)設定物件初始值格式,因須標示何者class使用的初始值,故class_name不可省略.

拷貝建構元格式class_name win1=win2;因win2會在之前預先宣告所屬類別,故class_name 可省略.

minsin 發表在 痞客邦 留言(0) 人氣()

拷貝物件是以一個既存在物件建立一個新物件,會同時執行copy constructor,但建立一個物件的參照物件僅是建立一個既存在物件

別名物件,並非為建立新物件.故不會執行copy constructor

minsin 發表在 痞客邦 留言(0) 人氣()

成員函式傳回物件,可再利用物件取得成員函式或class成員變數操作(如同經由檔案夾以取得檔案,但變數本身即是檔案等級的資料,故無法(win1.compare(win2)).get_id()再進行進一步的操作.但成員函式傳回的物件為何無法執行物件本身地址的操作呢???

&(win1.compare(win2)).

minsin 發表在 痞客邦 留言(0) 人氣()

指標*p指向一個變數地址時,其代表為一個指標,但當指標*p單獨使用時,其表示為一個值.

變數的地址格式:&var

minsin 發表在 痞客邦 留言(0) 人氣()

成員函式僅能傳回一個變數,要同時傳回多個class成員變數,使用cwin(初始值1,初始值2,初始值3,...)傳回以物件接收(不可以參照接收),已設定物件初始值.

若傳回為物件,可以傳回物件的參照物件格式,給物件接收,執行物件拷貝,但因傳回者為以初始值為參數的class函式呼叫格式(以物件初始值為參數),非建立參照物件拷貝格式,因此無法以物件的參照物件格式傳回.

minsin 發表在 痞客邦 留言(0) 人氣()

class cwin
{

minsin 發表在 痞客邦 留言(0) 人氣()

cwin(char sch='k',char *text="fault window",int si=9)

int si依序先設,再設char *text與char sch

minsin 發表在 痞客邦 留言(0) 人氣()

當class物件僅有一種成員變數,則可以變數資料直接設定給變數方式設定

cwin win1='p';

minsin 發表在 痞客邦 留言(0) 人氣()

當要以一個既存在的物件以建立一個新物件的資料成員,須使用拷貝建構元以拷貝資料成員.

當以物件為參數呼叫函式,且函式以物件做為接收的引數,其呼叫函式的物件參數物件做為函式的接收引數關係,就如同是以一個既存在的物件以建立一個新物件的關係,故以物件呼叫以物件為接收的函式需呼叫拷貝建構元.

minsin 發表在 痞客邦 留言(0) 人氣()

win1,win2中,width與height 較大者設定win3.

cwin(&) operator+(cwin &win)  //以class(cwin)傳回或者以cwin('e',w,h)格式設定初始值,不可以參照接收?????.

minsin 發表在 痞客邦 留言(0) 人氣()

class物件使用class中的函式有三種函式:

1.class函式:

minsin 發表在 痞客邦 留言(0) 人氣()

字元陣列:array[5]={'w','a','t','e','r'}; //結尾不須保留字串結束符'\0'

若要採各別輸入單個字元以設定陣列元素方式,以輸入字串,則需於字串結尾自行加入字串結束符'\0'

minsin 發表在 痞客邦 留言(0) 人氣()

字元陣列char array[1]={'p'};

字串陣列char array[1]="p";  //顯示字串太長錯誤.

minsin 發表在 痞客邦 留言(0) 人氣()

 

成員函式為遞增(減)運算子多載函式,因遞增(減)的為class的資料成員,故遞增(減)運算子多載成員函式執行結束後,其內的資料成員的遞增(減)值將保留,並不會如一般函式內的變數值一般,僅在函式內有效,因此兩次結果將累加.

minsin 發表在 痞客邦 留言(0) 人氣()

物件不是一個具體的值,故傳遞物件僅能以參照接收,而不能以值接收.???

或是物件傳遞以參照接收可以修改目的物件並返回以同時改變來源物件(雙向改變).??????????????????????????

minsin 發表在 痞客邦 留言(0) 人氣()

若為單運算元的運算子覆載,成員運算符函式括弧內參數列為空白,若為雙運算元的運算子覆載,成員運算符函式括弧內參數列則只有個參數.

c++編譯器根據參數的個數和類型,來決定呼叫哪個覆載函式,因此可以為同一個運算符定義幾個覆載函式以進行不同的操作.

minsin 發表在 痞客邦 留言(0) 人氣()

complex operator+(complex com1,complex com2)

{

minsin 發表在 痞客邦 留言(0) 人氣()

 

1.將產生cin.rdstate()錯誤.

minsin 發表在 痞客邦 留言(0) 人氣()

停止擷取字元,字串結束字元與enter鍵字元.


minsin 發表在 痞客邦 留言(0) 人氣()

1.當兩次的擷取字串均使用相同的停止擷取字元'ch' ,且第一次以cin.get(array , n , 'ch')擷取字串後,其停止擷取字元'ch'將滯留在buffer內,以自動被第二次所擷取 ,因兩次均使用相同的停止擷取字元'ch' , 故第二次將同樣判定為停止擷取字元,而不再擷取字元 ,且因不再繼續擷取字元 ,故自動再將字串結束字元附加上.而enter鍵因在整個輸入字串最後一個字元(故同時也在停止擷取字元'ch'之後),故亦不擷取.使得第二次的儲存內容成為空字元. 


minsin 發表在 痞客邦 留言(0) 人氣()

Close

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

reload

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼