C++中逗号操作符的重载
生活随笔
收集整理的這篇文章主要介紹了
C++中逗号操作符的重载
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1 C++中逗號操作符的重載
- 1.1 逗號操作符的原生語義
- 1.2 重載逗號操作符
1 C++中逗號操作符的重載
1.1 逗號操作符的原生語義
逗號操作符(,)可以構成逗號表達式:
- 逗號表達式用于將多個子表達式連接為一個表達式。
- 逗號表達式的值為最后一個子表達式的值。
- 逗號表達式中的前N-1個子表達式可以沒有返回值。
- 逗號表達式按照從左向右的順序計算每個子表達式的值。
逗號表達式的示例:
1.2 重載逗號操作符
可以重載逗號操作符:
- 在C++中重載逗號操作符是合法的。
- 使用全局函數對逗號操作符進行重載。
- 重載函數的參數必須有一個是類類型。
- 重載函數的返回值類型必須是引用。
重載逗號操作符:
如上結果顯然和我們預期的不同,但是我們將全局的逗號操作符重載函數注釋掉后反而符合我們的預期。
問題的本質分析:
由于操作符重載無法完全實現逗號操作符的原生語義,所以工程中不要閑著沒事干重載逗號操作符!
參考資料:
總結
以上是生活随笔為你收集整理的C++中逗号操作符的重载的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++中的逻辑操作符重载
- 下一篇: C++中前置操作符和后置操作符的重载