「C Sharp/インデクサー」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | + | '''インデクサー'''(英:indexer)とは、[[C Sharp|C#]]に搭載されているユーザー定義型を配列のように扱えるようにする機構のことである。 | |
− | + | [[C++]]における添字参照演算子([]演算子)のオーバーロードと似たようなもので、さらに取得(get)と設定(set)のそれぞれに別々のメソッドを割り当てれるようになったものと思って間違いない。 | |
− | + | インデクサーの書式は[[プロパティー]]の書式に似ている。 | |
− | + | ||
+ | 記述例。 | ||
<source lang="csharp"> | <source lang="csharp"> | ||
− | |||
class Hoge { | class Hoge { | ||
12行目: | 12行目: | ||
public String this [int index] { | public String this [int index] { | ||
− | + | get { return _data[index]; } | |
− | get { | + | set { _data[index] = value; } |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
− | |||
// var hoge = new Hoge(); | // var hoge = new Hoge(); | ||
// hoge[0] = "aaa"; | // hoge[0] = "aaa"; | ||
29行目: | 22行目: | ||
</source> | </source> | ||
− | + | [[C++]]の添字参照演算子([]演算子)のオーバーロードの例。 | |
− | + | 10年ぶりくらいにC++を書いた気がする。 | |
− | + | もしかすると間違っているかもしれない。 | |
− | |||
<source lang="cpp"> | <source lang="cpp"> | ||
#include <iostream> | #include <iostream> | ||
56行目: | 48行目: | ||
== 関連項目 == | == 関連項目 == | ||
− | |||
* [[プロパティー]] | * [[プロパティー]] | ||
− | |||
* [[C Sharp|C#]] | * [[C Sharp|C#]] | ||
− | |||
== 参考文献 == | == 参考文献 == | ||
− | + | <references/> | |
+ | == 外部リンク == | ||
{{stub}} | {{stub}} |