lionking
6 months ago
有一好沒兩好的例子XD
以前 C++ 在 overload operator 這件事確實讓人很煩躁,擴充功能後舊的寫法就出事了XDC++20 behaviour breaking existing code with equality...
lionking
6 months ago
備註:C++20 支援 rewritten 的能力,所以
a == b 這個寫法在 C++20 會自動多了這幾種可能性
b == a
!(a != b)
!(b != a)

也就是以前這幾種寫法都要各自 overload 才支援,現在寫一種就自動支援其他幾種等價的寫法
lionking
6 months ago
但長久來說是好事拉...不然以往支援了 a == b,接下來就要依序寫上
a != b
b == a
b != a
然後全部都是根據 a == b 來延伸,有夠煩
yipo🌿
6 months ago @Edit 6 months ago
知道 boost 針對這問題的解方是:Operators - 1.85.0
結果到標準上終究沒有採納嗎…
立即下載