有很多與運算符[]只有一個參數有關的問題,但我找不到真正說明原因的問題。爲什麼operator []只有一個參數?
例如,matrix[0, 3]
調用ElementT& operator[](SizeT x, SizeT y)
函數似乎是該語言的一種非常自然的擴展。
是否有任何特殊的原因(如不兼容),這種語法不是在語言中,或者除了缺乏動機,實際上阻止它被添加? (注意:這已被標記爲重複,但不是,這個問題是「爲什麼不是這種語言的語法?」而不是「我該如何解決這個問題?」。如上所述,在那裏有很多問題可以解決後者,但沒有回答前者的問題。)
可能與'a [1,3]'目前已經完全有效的語法(','是逗號運算符)有關。 – 2014-10-11 14:35:08
https://groups.google.com/a/isocpp.org/forum/#!topic/std-proposals/tOJx2TcHpH0 – chris 2014-10-11 14:35:16
運算符在C++中的重載並不能真正改變重載操作符如何工作的基礎知識,在C++中沒有運算符'[]',它具有多個值。 – 2014-10-11 14:35:40