C 捷徑之五

2021-04-12 21:46:18 字數 2459 閱讀 5374

//  說明成

員函式重

載運算子

three_d operator=(three_d op2);

//類中定義,

=運算子過載

three_d three_d::operator ++()

//前置

++;++a

three_d operator++(int notused);

three_d three_d::operator ++(int notused)

//後置++;

a++

friend three_d operator++(three_d &op1);

//宣告為友元,必須加上

three_d &op1

,why?

friend three_d operator++(three_d &op1, int notused);

//記住

friend three_d operator +(three_d op1,three_d op2);//

成員函式

定義為友元

three_d operator +(three_d op1,three_d op2)

//成員函式此時沒有加作用域

three_d::

#include

#include

#include

using namespace std;

class sample

sample(const sample &ob);

~sample()

void show() ;

int elye=0;

sample::sample(const sample &ob)

void sample::set(char *str)

sample sample::operator =(sample &ob)

strcpy(s,ob.s);

return *this;}

sample input()

int main()

//程式沒有除錯通過,說 //

int operator(int i)

//類中

說明,陣列

ob[2]

//等價於

ob.operator (2)

three_d operator()(int a,int b,int c);

//類中

()說明

ob2=ob1(10,11,12);

str_type(char *str="") ;

class truck: public road_vehicle;//truck

是road_vehicle

的派生類。私有不能直接呼叫

class derived:private base;//private

派生,則基類中成員均為派生類的私有成員

base::set;//

對於基類中定義的

set()

函式,使之派生類在私有派生情況下仍舊可用

class derived: protected base;//

protected

派生,則基類中成員均為派生類的私有成員

class derived: public base1,public base2;//

多繼承

//派生類的成員若於基類同名,則基於本身。即派生的對派生的,基的對基的 //

基於保護的

protected

,被派生後相當於成為私有變數。

//說明構造和析構

class base

~base()

};

class derived: public base

~derived()

};

int main()

//結果:

constructing base.

//constructing derived.

//destructing derived.

//destructing base.

//先呼叫基類的建構函式,再呼叫派生類的,

析構則相反。

//--

程式#12  說明

傳遞引數給基

類derived(int x, int y): base(y)

;//base(y)

為基類中定義

ob.derived1::i=10;

//基類中成員的使用

class derived1: virtual public base;//

虛基類

ob.i=10;

//此時可以直接呼叫

base

中的成員,不需要

ob.derived1::i=10

C 捷徑之七 結束

異常處理 try,throw,catch try catch int i throw 扔出的值,與 catch 得到的值型別匹配 被扔出值後,程式就跳到 catch 語句進行處理。處理完後繼續執行 catch 後面的語句。class myexception myexception char s 定義...

通向DirectDraw之捷徑

1.directdraw的安裝 在本文中,我假定你擁有微軟公司的 visual c 和 directx 8.1 sdk。如果沒有,就快去準備乙份吧。首先,啟動你的 visual c 建立乙個新的 win32 應用程式工程。然後進入 你 directx sdk 資料夾中的 common include...

C 捷徑之一

所有變數在 呼叫前必 須被初始化。對所有的用 戶輸入,必 須進行合法性檢查。不要比較 浮點數的相等,如 10.0 0.1 1.0 不可靠 程式與環 境或狀態發生關 系時,必須 主動去處 理發生的意外事件,如檔案能否 邏輯鎖定 印表機是否 聯機等。單元 測試也是 程式設計的一部份,提交 聯調測試 的程...