最終更新日時(UTC):
が更新

履歴 編集

添字演算子内でのカンマ演算子の使用を非推奨化(C++20)

概要

多次元配列クラスを設計する場合などで、単一の引数しかとれない添字演算子にar[x, y]のようにカンマ演算子をオーバーロードして複数のインデックスを指定できるようにすることがあった。

しかしこのようなハックは、将来的に添字演算子に複数引数をとれるようにする際に障害となってしまうため、添字演算子内でのカンマ演算子の使用を非推奨化する。

ar[x]      // C++17:OK, C++20:OK
ar[(x, y)] // C++17:OK, C++20:OK
ar[x, y]   // C++17:OK, C++20:非推奨

既存のカンマ演算子をオーバーロードしたコードを使用する場合は、丸カッコで囲むこと。

関連項目

参照