operator

読み:オペレーター
外語:operator 英語
品詞:名詞

C++の予約語の一つ。

目次

C++

演算子関数として表現する場合に用いる。

例えば=演算子を独自の処理としたい場合は「operator=」の名で関数を定義することになる。このような手法を、演算子のオーバーロードという。

C++標準仕様では、次の演算子をオーバーロードできる。

  • +
  • -
  • *
  • /
  • %
  • ^
  • !
  • =
  • <
  • >
  • +=
  • -=
  • ^=
  • &=
  • |=
  • <<
  • >>
  • <<=
  • <=
  • >=
  • &&
  • ||
  • ++
  • --
  • ()
  • []
  • new
  • delete
  • &
  • |
  • ~
  • *=
  • /=
  • %=
  • >>=
  • ==
  • !=
  • ,
  • ->
  • ->*

C++でよく使われる、入出力ストリームに対する<<や>>は、演算子のオーバーロードによって実現されている。

C++11

C++11では、ユーザー定義直定数の関数定義に使用する。

例えば、raw形式の直定数は、次のように定義することができる。

Example operator""_Suffix(const char *str_literal);

これを、次のように使うことができる。

Example var = 12345_Suffix;

この処理は、「operator""_Suffix("12345")と記述した場合と等価の動作をすることになる。

operatorの後に書く演算子を表わす部分は、""から始まり、実際の直定数名が続く。直定数名はC++11当初規格では、常に_(アンダースコア)から始まらなければならない。

用語の所属
C++
関連する用語
演算子
ユーザー定義直定数

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club