(1).如電腦類由鍵盤類、滑鼠類、顯示類、cpu類、memory類等類組成
(2).類通常可以分為以下兩個部分:
a.類的實現細節
b.類的使用方式(使用者一般只關心怎麼使用,而不會關心內部到底如何實現)
(1).當使用類的時候不需要關心其實現細節
(2).當建立乙個類時,才需要考慮其內部實現細節
(3).封裝的基本概念:
a.並不是類的每個屬性都是對外公開的
b.而一些類的屬性是對外開放的
因此,需要在類的表示法中定義屬性和行為的公開級別
c++中類的封裝:
成員變數(表示類的屬性)
成員函式(表示類的行為)
在c++中可以給成員變數和成員函式定義訪問級別
public:成員變數和成員函式可以在類的內部和外界訪問和呼叫
private:成員變數和成員函式只能在類的內部被訪問和呼叫
類成員的訪問屬性:
struct girl : human }
struct boy : human }
main 相對類來說就是外界。
(1).類成員的作用域都只在類的內部,外部無法直接訪問
(2).成員函式可以直接訪問成員變數和呼叫其它成員函式,但外部只能訪問public成員
(3).c++中用struct定義的類的所有成員預設為public,而class定義的磊預設是private的
#include
using
namespace
std;
class student
要求:1.提供setoperator函式設定運算型別,如加、減、乘、除
2.提供setparameter函式設定運算引數,型別為整型
3.提供result函式進行運算,其返回值表示運算合法性,通過引用引數返回結果。
operator.h:
#ifndef _operator_h_
#define _operator_h_
class operator
;#endif
operator.cpp:
#include "operator.h"
#include
using
namespace
std;
bool operator::setoperator(char c)//注意指定是那個類的函式
else
return ret;
}void operator::setparameter(double d1, double d2)
bool operator::result(double& r)//利用引用來儲存結果
else
break;
case
'+':
r = m1 + m2;
break;
case
'*':
r = m1 * m2;
break;
case
'-':
r = m1 - m2;
break;
default:
ret = false;
break;
}return ret;
}
main.c
#include
#include "operator.h"
using
namespace
std;
int main()
getchar();
return
0;}
以上程式,主函式只知道怎麼使用,不知道其內部如何實現,這就是類的封裝 類中的封裝
類中的成員有屬性和方法,如何對其成員經行封裝?通過protected和local關鍵字設定成員的訪問許可權,以此達到封裝的目的。也就是外部不能直接對類中的成員經行訪問以及改寫,但是可以通過set和get方法進行間接方法以及改寫。例子 class clock local bit is sunmer 0...
MVC封裝(七)配置載入類
首先在lib下新建配置類檔案conf.php 然後,使用靜態方法,首先是get方法,然後給方法連個引數,乙個是需要載入配置的名稱,乙個是需要載入配置的檔案。然後在core下新建資料夾config再把相關的配置檔案放到裡面 然後在新建檔案route.php,在裡面定義乙個預設的路由。在core lib...
c 中類的封裝
連線directshow filter cvideo 類中,這樣程式簡潔明瞭,易於操作,不容易出錯,提高了程式的魯棒性。1.類的定義 類是定義同一類所有物件的變數和方法的藍圖或原型。例如,可以建立乙個定義包含當前檔位等例項變數的自行車類。這個類也定義和提供了例項方法 變檔 剎車 的實現。例項變數的值...