interfaceに関するdotsargのブックマーク (4)

  • コレクション内での比較と並べ替え - .NET

    System.Collections クラスは、削除する要素を検索するか、キーと値のペアの値を返すかに関係なく、コレクションの管理に関連するほぼすべての処理において比較を実行します。 通常、コレクションは等値比較子か順序比較子、またはその両方を使用します。 比較には 2 つのコンストラクターが使用されます。 等しいかどうかの確認 Contains、 IndexOf、 LastIndexOf、 Remove などのメソッドは、コレクション要素に対して等値比較子を使用します。 コレクションがジェネリックの場合、次のガイドラインに従ってアイテムの等価性が比較されます。 T 型で IEquatable<T> ジェネリック インターフェイスが実装されている場合、等値比較子はそのインターフェイスの Equals メソッドです。 T 型で IEquatable<T>が実装されていない場合、 Object

    コレクション内での比較と並べ替え - .NET
  • [C#]イマイチ分かりにくいIDisposableの実装方法をまとめる。

    IDisposableという、さかしいインターフェースをご存知だろうか? C#からC++を呼び出すなどで外部DLLを扱う場合に割り当てたメモリーや、ファイルハンドル、Bitmapクラスなどアンマネージドリソースを明示的に開放する方法を定義したもので、MSDNには、Dispose()というメソッドのみが用意されている。 IDisposable インターフェイス (System) 要は、このメソッドの中で、クラスが持っているリソースを開放するだけなのだけれど、単にこのメソッドを実装するだけではダメな意地のわるいインターフェース。 今回は、そんな困ったチャンを正しく使う方法をまとめる。方法だけ知りたいせっかちな御仁は最後のセンテンスだけ読めばOK。

    [C#]イマイチ分かりにくいIDisposableの実装方法をまとめる。
  • C++11時代におけるクラスの書き方 - イグトランスの頭の中

    記事は、C++11 Advent Calendar 2011 : ATNDの2日目の記事です。 C++のclassは様々な使い方ができます。後発のほかの言語ではいくつもの概念に分かれているものも、C++ではすべてclassということもあります。 そこで、C++でclassを定義する際も、classと一括りにせず、自分がいったいどんなclassを書こうとしているのか明確に意識するとよいのではないだろうかと考えました。そのために、私なりのclassの分類をまとめ、この記事を書くことにしました。 これは、各々のプログラミング言語の経験により違いが出ることと思います。異論もあると思いますので、ご自身でも考えてみるとよいと思います。 以下、この記事では4種類に分類しています。 1つ目は「オブジェクト指向プログラミング (OOP) を実現するクラス」です(長いので以下OOPクラスと略します)。 vi

    C++11時代におけるクラスの書き方 - イグトランスの頭の中
  • インターフェイスのプロパティ (C# プログラミング ガイド)

    インターフェイス (C# リファレンス) に対してプロパティを宣言できます。 次に示すのは、インターフェイス インデクサーのアクセサーの例です。 public interface ISampleInterface { // Property declaration: string Name { get; set; } } インターフェイス プロパティのアクセサーには、体がありません。 したがって、アクセサーの目的は、プロパティが読み取り/書き込み、読み取り専用、または書き込み専用のいずれであるかを示すことです。 使用例 次の例では、インターフェイス IEmployee には、読み取り/書き込みプロパティ Name と読み取り専用プロパティ Counter があります。 Employee クラスは IEmployee インターフェイスを実装し、この 2 つのプロパティを使用します。 プログ

    インターフェイスのプロパティ (C# プログラミング ガイド)
    dotsarg
    dotsarg 2014/05/25
    インターフェイスを多重実装した場合にプロパティ名が同じものが存在した場合の記述方法が掲載されている。
  • 1