[C++] 多載指定運算子
多載指定運算子 在前一章,我們學會了如何多載比較運算子,一種非常常用的運算子種類。 今天我們要來多載指定運算子 =,英文叫做 assignment operator,也叫做 copy assignment operator。 多載這個運算子讓我們可以客製化指定物件為某一個值的這個過程。 讓我們繼續看下去吧! 多載 = 因為這不是我們第一次多載運算子,因此,在這章我們就直接來看該如何多載 = 運 [...]
[C++] 多載比較運算子
多載比較運算子 在前一章,我們學會了如何多載 I/O 運算子,一種非常常用的運算子種類。 今天我們要來多載 比較運算子,也是另一種常用的運算子種類。 多載這類的運算子讓我們可以互相比較兩個物件,或是針對一系列相同的物件進行排序。 多載 > 與 < 這邊我們就不介紹要如何多載運算子啦~ 想要複習的人可以往前面幾章看。 這邊我們就直接來看該如何多載一個 > 和 < 的運算子 [...]
[C++] 多載 I/O 運算子
多載 I/O 運算子 在前面幾章中,我們學會了三種多載運算子的方法,也知道要如何多載基本的加減乘除運算子。 然而,運算子不只有加減乘除,還有其他的比如說 >、<、!= 等等。 在這章中,我們要來看要如何多載 I/O 運算子!也就是 std::cout << 中的 << 和 std::cin >> 中的 >>。 問題 首先我們先來看看為 [...]
[C++] 利用成員函數多載運算子
利用成員函數多載運算子 在前一章 利用普通函數多載運算子 中,我們講到了第二種方法多載運算子的方法,在那一章中,我們介紹了如何用普通函數多載運算子。 這章我們要來看看第三個也是最後一個方法,也就是利用成員函數多載運算子! 實作 一樣,我們不在這章討論為什麼我們會需要去多載一個運算子,因為在前一章我們已經討論過了。 因此這章,我們就跳過那些已經討論過的問題,直接來看如何實作。 在討論如何使用成員 [...]
[C++] 利用普通函數多載運算子
利用普通函數多載運算子 在前一章 利用 Friend 多載運算子 中,我們講到了有三種方法可以多載運算子,在那一章中,我們介紹了如何用 Friend 多載運算子。 這章我們要來看看第二個方法,也就是利用普通函數多載運算子! 實作 在前一章中,我們已經討論過為什麼我們會需要去多載一個運算子了。 因此這章,我們就跳過那些已經討論過的問題,直接來看如何實作。 這邊我們繼續利用前一章的例子,並附上使用 [...]
[C++] 利用 Friend 多載運算子
利用 Friend 多載運算子 在前一章 多載運算子基本介紹 中,我們簡單介紹了多載運算子這個概念,但我們沒有講解該如何實作多載運算子。 這章我們就要來看看到底該如何實作多載運算子! 前言 在 C++ 中最常用的運算子應該就是加 (+)、減 (-)、乘 (*) 、除 (/) 了。這些運算子都是二元的,意思是它們需要兩個運算元,一個在運算子的左側,一個在右側。 也因此,數一數二常見被多載的運算子 [...]
[C++] 多載運算子基本介紹
多載運算子基本介紹 在 運算子 那篇文章中,我們介紹了什麼是運算子 Operator,也對運算子進行了分類。 這章我們要來介紹一個新觀念:多載運算子!這個觀念非常重要,常常會在進階的類別應用中出現! 什麼是多載運算子 在 函數進階介紹 那篇文中,我們講到函數可以被多載。意思是只要函數原型不同,即使函數名稱相同,編譯器依然可以分辨我們是想使用哪個函數。 在 C++ 中,運算子的底層邏輯其實也是透 [...]