コンテナ (データ型)
オブジェクトへの参照やポインタのみを格納する。要素へのアクセスはその参照を返す。あるオブジェクトをコンテナに格納した後で外部で変更を加えると、コンテナの中身(その要素)が変更される。弱い参照によってガベージコレクションを考慮するものもある。
Javaのコレクション・フレームワークやC++のSTLなどで、多くの汎用コンテナが実装されている。なお、Javaの場合はジェネリクスは型消去によって実現されていることから、型パラメータにintのようなプリミティブ型を指定することはできず、java.lang.Objectから派生する参照型のみが許可される。そのため配列以外の汎用コレクションにプリミティブ型を直接格納することはできず、必ずjava.lang.Integerのようなプリミティブラッパークラスを使う必要がある。.NETのジェネリクスではこの点が改善されており、汎用コレクションの要素に値型・参照型を問わず任意の型を指定できる。