實作虛擬運算子
虛擬運算子的需求
自由函數的困境
出現這個問題是因為運算子透過間接解決方案要解決此困境,考慮增加一個封裝所需輸出行為的虛擬成員函數:<code class="cpp">class MyClass { public: virtual void print(ostream& out) const; // Virtual output function };</code>
具有虛擬行為的自訂運算子
使用虛擬成員函數,您可以定義運算子ostream& operator<<(ostream& out, const MyClass& mc) {
mc.print(out); // Calls the virtual print function
return out;
}<p></p>此方法為運算子維護正確的參數順序
以上是為什麼我不能建立 `operator的詳細內容。更多資訊請關注PHP中文網其他相關文章!