【发布时间】:2011-04-20 23:54:10
【问题描述】:
在哪里可以找到所有运算符重载的函数签名列表?
【问题讨论】:
-
当您确定哪个答案对您最有帮助时,请单击答案左侧的复选框轮廓,将其标记为已接受的答案。
标签: c++ operators operator-overloading
在哪里可以找到所有运算符重载的函数签名列表?
【问题讨论】:
标签: c++ operators operator-overloading
维基百科:Operators in C and C++.
【讨论】:
ISO/IEC 14882:2003 §13.5,重载运算符
如果您没有文档副本,它不如 Wikipedia 列表有用,但它具有权威性的好处。
您还可以查阅最新的 C++0x 草案,N3126,第 13.5 节,重载运算符。
【讨论】:
在书中:Bruce Eckel 的“Thinking in C++, 2nd ed. Volume 1”
您可以在线阅读。您正在寻找的章节(第 12 章),例如可以找到here。
【讨论】:
operator->* 描述(因为那是最有可能出错的地方),果然他声称它只能用于返回函子,即模拟指向成员函数的指针,不是指向数据成员的指针。对于它的价值......另外,链接到章节:briceg.com/eckel/one/Chapter12.html
您可以在cppreference 上找到它们,按运营商cagetory 划分:
a=b, a+=b, a-=b, a*=b, a/=b, a%=b, a&=b, a|=b, a^=b, a^=b, @98765434
++a, --a, a++, a--
+a,-a,a+b,a-b,a*b,a/b,a%b,~a,a&b,a|b,a^b,a<<b, a>>b
a||b, a&&b, !a
a==b, a!=b, a<b, a>b, a<=b, a>=b, a<=>b(C++20)a[b], *a, &a, a->b, a.b, a->*b, a.*b
a(...), a,b, a?b:c
我建议检查operator overloading 页面中的规范实现。
【讨论】: