国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++中對類和對象基礎理解

2019-11-06 07:34:35
字體:
來源:轉載
供稿:網友

C++中對類和對象基礎理解

C++不是純面向對象的編程語言,而是基于面向對象的語言,因為C++中包含C語言的部分,而C語言是面向過程的。

面向對象的三大特性:封裝、繼承、多態

封裝:將方法和數據封裝在類里面,可以根據訪問限定符的使用保證數據的安全性,隱藏了方法的實現細節,也方便使用。

繼承:對已有類增加屬性和功能或進行部分修改來建立新的類,是實現代碼的復用的重要手段,繼承是類型之間的關系建模。

多態:在面向對象的程序里面,同一個消息被不同的對象接受后可以導致不同的行為,是接口的多種不同的實現方式。

這里先介紹類的重載性部分。

訪問限定符解釋

      (1)public成員可以直接從類外部訪問,PRivate/protected成員不可以從類外部直接訪問。

      (2)每個限定符在類中可以使用多次,一個限定符的作用域是下一個訪問限定符或類結束前。

      (3)類里面如果沒有多成員指定訪問限定符,則默認為私有的。

下面我們引入一個簡單類的例子加深理解

其中成員函數也可以在類內部聲明,在類外部定義。

class Student{public:	void Display();private:	char* _name;	char* _sex;	int _num;};void Student::Display(){	cout << "姓名:" << _name << endl;	cout << "性別:" << _sex << endl;	cout << "學號:" << _num << endl;}

類的實例化對象(為了方便舉例,這里將成員變量定義為公有的)

void Test(){	Student s;	s._name = "小紅";	s._sex = "女";	s._num = 01;	s.Display();}類只是一個模型一樣的東西,只想定了該類中有哪些成員,定義出一個類并沒有分配實際的內存空間,類就像現實生活中建筑設計中的圖紙,只需要設計出需要些什么東西,真正占用空間,能實際存儲數據的是實例化出的對象。

類的存儲對象模型

一個對象的大小等于類中所有成員變量的大小之和(遵循內存對其規則),空類的大小為1

類的六個默認成員函數

下面直接用日期類的例子解釋這前四個常用的默認成員函數

class Date{public:	Date(int year, int month, int day)//構造函數	{		_year = year;		_month = month;		_day = day;	}	Date(const Date& d)//拷貝構造函數	{		_year = d._year;		_month = d._month;		_day = d._day;	}	Date& Operator = (const Date& d)//賦值運算符重載	{		if (this != &d)		{			this->_year = d._year;			this->_month = d._month;			this->_day = d._day;		}		return *this;	}	~Date()//析構函數	{		cout << " ~Date() " << endl;	}private:	int _year;	int _month;	int _day;};


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 左权县| 浮山县| 西平县| 临城县| 新河县| 宜州市| 彰化市| 天等县| 禄劝| 临沭县| 富源县| 察隅县| 黔西| 泰州市| 绥芬河市| 南靖县| 广饶县| 穆棱市| 乐亭县| 永昌县| 建始县| 郑州市| 哈巴河县| 白城市| 江达县| 芦溪县| 大新县| 孟州市| 雅江县| 彩票| 抚宁县| 攀枝花市| 惠东县| 宜丰县| 滨海县| 河津市| 洛阳市| 枝江市| 江孜县| 新津县| 丘北县|