4 C 類作用域

2021-04-14 15:38:52 字數 854 閱讀 8476

.類作用域

(前言,基類,派生類,虛函式的作用域,設計指導)

1.前言

類的作用域是指類成員的有效範圍和成員函式名查詢順序

兩個不同的類的作用域是不同的

如class a;

class b;

a obj1;

b obj2;

obj1=obj2;//錯誤,因為兩個不同的類的作用域是不同的

2.基類

2.1訪問類的成員只能使用.(成員訪問符)和->(指標)

2.2如果類的成員函式在類定義的外面完成,則必須::來指出是哪個類的成員函式

如item& item::opertor=(item& rhs)

2.3成員函式的形參是在類的作用域中,可直接使用

2.4成員函式的返回值是不定在類的作用域中,可以返回的是其它型別

3.派生類

在派生類中的作用域自動巢狀到基類,在查詢對應的成員函式名字時,

.如果派生類有實現,就會直接使用派生類成員函式,發生基類的成員函式被隱藏掉,

.如果要直接呼叫基類成員函式,就得直接使用"基類名稱::成員函式"來完成

**舉例

class derived : base

};4.虛函式的作用域

如何在派生類呼叫虛基類的成員函式呢?

就是通過基類的引用和指標來產生"動態繫結"而達到呼叫基類或者派生類的函式

否則是不能直接呼叫虛基類的虛函式

5.設計指導

在設計派生類時,盡量避免和基類的成員名字相同,以方便使用類

c 類作用域

1.在類中定義的名稱,其作用域是整個類,改名稱只在此類中是已知的,類外是不可知的。直接成員運算子 間接成員運算子 作用域解析運算子 2.定義乙個作用域為類的常量 1 直接定義 錯誤,不可行 class base 因為類的宣告只是描述了物件,並沒有建立物件。因此,在建立物件前,將沒有用於儲存值得空間 ...

練習4 c 基礎

using system using system.collections.generic using system.linq using system.text namespace列舉 列舉可用來儲存字串與數字的值對,相當於乙個對照表 常用方法 getname getvalue parse 宣告乙...

4 C語言函式

在定義時,若省略了函式返回值的型別,則預設為int型。在同一程式中,函式名必須唯一 同一函式中,行參名也必須唯一。行參之間用逗號隔開,可以沒有行參。除行參外,凡是在函式中用到的變數或是其它函式必須先進行宣告,再使用。行參和函式體中的變數只在函式被呼叫時才臨時分配儲存單元。函式的定義時平行的,不能再乙...