[C++] this 指標

this 指標 在 指標 那篇中,我們理解了什麼是指標。而在類別 Class 中,存在了另一個指標,叫做 this 指標(this pointer)。 這章我們就是要來一探究竟這個指標究竟是什麼東西! 初學者的疑問 初學類別的人很常問的一個問題就是:「我在呼叫成員函數時,程式碼是怎麼知道是哪個實體物件的函數?」 聽不懂什麼意思?我們來看一個例子: class Object { private: [...]

By |2024-03-26|分類:C++|標籤:, , , |0 則留言

[C++] 友元件 Friend

友元件 Friend 在 類別優點 中,我們講到類別讓我們可以將細節給「包起來」,不讓外界看到。程式碼可以做到這點很大一部分歸功於關鍵字 public 和 private 的幫助。 但是當我們一定要取得另一個類別內被保護的資訊時該怎麼辦呢?這章我們就要來討論這個問題! 什麼問題 開頭說到,當我們一定要取得另一個類別中被保護的資訊時,該怎麼辦呢? 什麼情況會需要取得另一個類別中被保護的資訊呢? [...]

By |2024-03-21|分類:C++|標籤:, , , |0 則留言

[C++] 靜態成員函數 Static Member Function

靜態成員函數 Static Member Function 前一章我們介紹了什麼是 靜態成員變數,這章我們要來介紹另一個成員,也就是靜態成員函數 Static Member Function! 什麼是靜態成員函數 在前一章我們已經知道了什麼是靜態成員變數,但那個並不是類別中唯一的靜態成員。 函數也可以是靜態成員,就叫做靜態成員函數。 我們直接來看一個例子: class Object { pub [...]

By |2024-03-19|分類:C++|標籤:, , |0 則留言

[C++] 靜態成員變數 Static Member Variable

靜態成員變數 Static Member Variable 在 內部連結 那篇文中,我們講到如果要將一個全局變數改為擁有內部連結,我們可以使用關鍵字 static。 在類別中,我們有時候也會看到 static 關鍵字,但意義卻有一些些不一樣。 讓我們一起來看看吧! 什麼是靜態成員變數 我們直接來用實例看看什麼是靜態成員變數,先來看看這個例子: class Object { public: in [...]

By |2024-03-18|分類:C++|標籤:, , |0 則留言

[C++] 解構子 Destructor

解構子 Destructor 在 建構子 那篇中,我們知道建構子的存在是用來定義實體物件的創建過程。 既然有東西定義創建過程,那有沒有東西定義物件的銷毀過程呢? 有的!那就是我們今天要講的解構子 Destructor! 什麼是解構子 和建構子一樣,我們可以把解構子看作是一個類別中特別的函數,這個特別的函數會在物件被銷毀時「自動」執行。 你可能會問說,為什麼物件被銷毀時還要特別呼叫解構子這個函數 [...]

By |2024-03-15|分類:C++|標籤:, |0 則留言

[C++] 複製建構子 Copy Constructor

複製建構子 Copy Constructor 在 建構子 Constructor 那篇文章中,我們介紹了什麼是建構子,和類別的關係是什麼。但是建構子的深度遠遠不止於此。 這章我們要來介紹更為進階的觀念:複製建構子 Copy Constructor! 什麼是複製建構子 我們知道建構子是類別用來建立實體物件的函數。在一般的建構子,我們是透過傳進類別所需要的參數進行建構。 比如說: Object o [...]

By |2024-03-08|分類:C++|標籤:, |0 則留言

[C++] 建構子 Constructor

建構子 Constructor 在 類別 Class 中,我們介紹了什麼是類別以及該如何創造一個類別,其中我們講到了建構子,但我們沒有細講什麼是建構子。 建構子是創造一個實體物件必備的要件之一。接下來,讓我們仔細來討論這個重要的要件吧! 什麼是建構子 我們可以把建構子看作是一個類別中特別的函數,這個特別的函數會在物件被創造時「自動」執行。 當一個物件被創造時,編譯器會在該類別中尋找可以匹配的建 [...]

By |2024-03-07|分類:C++|標籤:, |0 則留言

[C++] 結構 Struct

結構 Struct 在前一章 類別 Class 中,我們仔細介紹了什麼是類別,以及它和物件導向的關係。 這章我們要來介紹類別的兄弟:結構 Struct。 什麼是結構 在前一章中,我們講到在 C++ 中,類別 Class 就像是物件的藍圖或是模板。 其實,Struct 和 Class 基本上是一樣的概念!結構一樣是物件的藍圖,一樣可以有不一樣的特徵和行為。 那如果是一樣的概念的話,為什麼要有結構 [...]

By |2024-02-28|分類:C++|標籤:, , |0 則留言
Go to Top