C++ 類 & 物件
C++ 在 C 語言的基礎上增加了面向物件編程,C++ 支持面向物件程式設計,類是 C++ 的核心特性,通常被稱為用戶定義的型別,
類用于指定物件的形式,它包含了資料表示法和用于處理資料的方法,類中的資料和方法稱為類的成員,函式在一個類中被稱為類的成員,
小編推薦一個學C語言/C++的學習裙【 712,284,705】,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!裙內有開發工具,很多干貨和技術資料分享!【點擊進入】
C++ 類定義
定義一個類,本質上是定義一個資料型別的藍圖,這實際上并沒有定義任何資料,但它定義了類的名稱意味著什么,也就是說,它定義了類的物件包括了什么,以及可以在這個物件上執行哪些操作,
類定義是以關鍵字 class 開頭,后跟類的名稱,類的主體是包含在一對花括號中,類定義后必須跟著一個分號或一個宣告串列,例如,我們使用關鍵字 class 定義 Box 資料型別,如下所示:
class Box
{
public:
double length; // 盒子的長度
double breadth; // 盒子的寬度
double height; // 盒子的高度
};
關鍵字 public 確定了類成員的訪問屬性,在類物件作用域內,公共成員在類的外部是可訪問的,您也可以指定類的成員為 private 或 protected,這個我們稍后會進行講解,
定義 C++ 物件
類提供了物件的藍圖,所以基本上,物件是根據類來創建的,宣告類的物件,就像宣告基本型別的變數一樣,下面的陳述句宣告了類 Box 的兩個物件:
Box Box1; // 宣告 Box1,型別為 Box
Box Box2; // 宣告 Box2,型別為 Box
物件 Box1 和 Box2 都有它們各自的資料成員,
訪問資料成員
類的物件的公共資料成員可以使用直接成員訪問運算子 . 來訪問,
為了更好地理解這些概念,讓我們嘗試一下下面的實體:
#include <iostream>
using namespace std;
class Box
{
public:
double length; // 長度
double breadth; // 寬度
double height; // 高度
// 成員函式宣告
double get(void);
void set( double len, double bre, double hei );
};
// 成員函式定義
double Box::get(void)
{
return length * breadth * height;
}
void Box::set( double len, double bre, double hei)
{
length = len;
breadth = bre;
height = hei;
}
int main( )
{
Box Box1; // 宣告 Box1,型別為 Box
Box Box2; // 宣告 Box2,型別為 Box
Box Box3; // 宣告 Box3,型別為 Box
double volume = 0.0; // 用于存盤體積
// box 1 詳述
Box1.height = 5.0;
Box1.length = 6.0;
Box1.breadth = 7.0;
// box 2 詳述
Box2.height = 10.0;
Box2.length = 12.0;
Box2.breadth = 13.0;
// box 1 的體積
volume = Box1.height * Box1.length * Box1.breadth;
cout << "Box1 的體積:" << volume <<endl;
// box 2 的體積
volume = Box2.height * Box2.length * Box2.breadth;
cout << "Box2 的體積:" << volume <<endl;
// box 3 詳述
Box3.set(16.0, 8.0, 12.0);
volume = Box3.get();
cout << "Box3 的體積:" << volume <<endl;
return 0;
}
當上面的代碼被編譯和執行時,它會產生下列結果:
Box1 的體積:210
Box2 的體積:1560
Box3 的體積:1536
需要注意的是,私有的成員和受保護的成員不能使用直接成員訪問運算子 (.) 來直接訪問,我們將在后續的教程中學習如何訪問私有成員和受保護的成員,
類 & 物件詳解
到目前為止,我們已經對 C++ 的類和物件有了基本的了解,下面的串列中還列出了其他一些 C++ 類和物件相關的概念,可以點擊相應的鏈接進行學習,?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/244571.html
標籤:其他
上一篇:volatile關鍵字詳解
