首頁  >  文章  >  後端開發  >  如何重載「<<」運算子作為模板類別「Pair」的友元?

如何重載「<<」運算子作為模板類別「Pair」的友元?

DDD
DDD原創
2024-10-31 23:18:281026瀏覽

How to Overload the '<<' Operator as a Friend for Template Class 'Pair'?

重載運算子'

嘗試重載“

要正確重載運算符,應如下修改友元聲明:

friend ostream&amp; operator<< <> (ostream&amp;, Pair<T,U>&amp;);

將模板參數留空在「」內,編譯器可以推斷參數列表以識別模板的特定專業化。

為了完全消除警告,可以聲明「operator

template <class T, class U> class Pair;

template <class T, class U>
ostream&amp; operator<<(ostream&amp; out, Pair<T,U>&amp; v);

// Template definition of 'Pair'

透過遵守此修訂後的語法,編譯器可以將友元聲明識別為模板的特化並重載'

以上是如何重載「<<」運算子作為模板類別「Pair」的友元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn