TNB Library
公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
CSingleSetT< TYP > クラステンプレート

シングルセット情報管理テンプレート [詳解]

#include <TnbSet.h>

+ CSingleSetT< TYP > の継承関係図

公開メンバ関数

virtual const TYP & At (INDEX index) const
 [取得] 要素の参照取得. [詳解]
 
const_iterator begin (void) const
 [反復] 先頭const_iterator. [詳解]
 
virtual INT_PTR Compare (const IConstCollectionT< TYP > &c) const
 [確認] 比較. [詳解]
 
 CSingleSetT (const CSingleSetT< TYP > &other)
 コピーコンストラクタ [詳解]
 
 CSingleSetT (size_t size=0)
 コンストラクタ [詳解]
 
bool Delete (const TYP &t)
 [削除] 指定要素の削除. [詳解]
 
virtual void Deserialize (const IDeserializer &ds)
 [処理] デシリアライズ [詳解]
 
const_iterator end (void) const
 [反復] 最後const_iterator. [詳解]
 
INDEX Find (const IChecker &checker, INDEX startIndex=0, bool boIsReverse=false) const
 [検索] 条件一致要素の検索. [詳解]
 
INDEX Find (const IConstCollectionT< TYP > &t, const IComparatorT< TYP > &comparator, INDEX startIndex=0) const
 [検索] 指定配列の検索. [詳解]
 
INDEX Find (const IConstCollectionT< TYP > &t, INDEX startIndex=0) const
 [検索] 指定配列の検索. [詳解]
 
INDEX Find (const TYP &t, const IComparatorT< TYP > &comparator, INDEX startIndex=0) const
 [検索] 指定要素の検索. [詳解]
 
INDEX Find (const TYP &t, INDEX startIndex=0) const
 [検索] 指定要素の検索. [詳解]
 
INDEX FindMax (const IComparatorT< TYP > &comparator, const TYP &def) const
 [検索] 要素の最大検索. [詳解]
 
INDEX FindMax (const TYP &def) const
 [検索] 要素の最大検索. [詳解]
 
INDEX FindMin (const IComparatorT< TYP > &comparator, const TYP &def) const
 [検索] 要素の最小検索. [詳解]
 
INDEX FindMin (const TYP &def) const
 [検索] 要素の最小検索. [詳解]
 
virtual TYP Get (INDEX index) const
 [取得] 要素の取得. [詳解]
 
virtual size_t GetElements (size_t size, TYP *_P, INDEX offset=0) const
 [取得] 複数要素取り出し. [詳解]
 
INDEX GetEqualIndex (const TYP &t) const
 [検索] 指定要素の検索. [詳解]
 
TYP GetEx (INDEX index) const
 [取得] 要素の取得. [詳解]
 
virtual size_t GetSize (void) const
 [取得] 要素数取得. [詳解]
 
bool Has (const TYP &t) const
 [確認] 値あるか? [詳解]
 
bool Insert (const IConstCollectionT< TYP > &t)
 [検索] 指定要素挿入. [詳解]
 
INDEX Insert (const TYP &t)
 [検索] 指定要素挿入. [詳解]
 
size_t InsertElements (size_t size, const TYP *P)
 [検索] 指定要素挿入. [詳解]
 
INDEX InsertEx (const TYP &t)
 [検索] 指定要素挿入. [詳解]
 
bool IsEmpty (void) const
 [確認] 要素の有無確認. [詳解]
 
virtual bool IsEqual (const IConstCollectionT< TYP > &c) const
 [確認] 比較. [詳解]
 
bool IsInRange (INDEX index) const
 [確認] INDEXの有効確認. [詳解]
 
virtual bool Lock (DWORD dwTime=INFINITE) const
 [排他] ロック [詳解]
 
 operator size_t (void) const
 [取得] 要素数取得. [詳解]
 
bool operator!= (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
INT_PTR operator- (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
bool operator< (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
bool operator<= (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
CSingleSetToperator= (const CSingleSetT &other)
 [代入] 代入 [詳解]
 
bool operator== (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
bool operator> (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
bool operator>= (const TNB::IConstCollectionT< TYP > &t) const
 [確認] 比較 [詳解]
 
const TYP & operator[] (INDEX index) const
 [取得] 要素の参照取得. [詳解]
 
virtual const TYP * ReferBuffer (void) const
 [取得] データアドレス取得. [詳解]
 
bool Remove (INDEX index)
 [削除] 要素一つ削除. [詳解]
 
virtual bool RemoveAll (void)
 [削除] 空化 [詳解]
 
virtual void Serialize (ISerializer &_sr) const
 [処理] シリアライズ [詳解]
 
virtual void Unlock (void) const
 [排他] アンロック [詳解]
 

限定公開メンバ関数

virtual INDEX OnFoundEqual (INDEX index)
 [通知] 同じ値発見通知. [詳解]
 

限定公開変数類

CVectorT< TYP > m_data
 データ [詳解]
 

詳解

template<typename TYP>
class TNB::CSingleSetT< TYP >

シングルセット情報管理テンプレート

同じ値は2つ格納できません。小さい順にソートされて格納されます。

型の配列(連続したメモリ配置)を管理します。
メモリを連続して配置しているため、他のAPIに配列として渡すのが容易です。
覚え書き
検索は Find() より GetEqualIndex() を使ったほうが高速です。
引数
TYP保持する型(operator<() 、及びコピー可能の型に限る)
// 例)TFoo を格納したい場合
struct TFoo
{
bool operator<(const TFoo& v) const
{
return a < v.a;
}
CStr a;
};
// 例)int を大きい順に格納したい場合
struct TInteger
{
bool operator<(const TInteger& other) const
{
return value > other.value;
}
int value;
};
TNB::CStrT< TCHAR > CStr
文字列クラス
Definition: TnbStr.h:1785
bool operator<(const TNB::IConstCollectionT< TYP > &t) const
[確認] 比較
参照
IConstCollectionT を実装しています。
ISequenceCollectionT を実装しています。
必要ファイル
TnbSet.h
日付
11/10/03 新規作成
12/07/29 InsertElements() 新規。
12/08/15 InsertElements() の仕様変更。 operator[] 追加。
14/11/10 Insert時、値が同じでも代入するように変更。

TnbSet.h70 行目に定義があります。

構築子と解体子

◆ CSingleSetT() [1/2]

CSingleSetT ( size_t  size = 0)
explicit

コンストラクタ

覚え書き
指定のメモリ確保時の追加サイズを設定します。
データは保持しません
引数
sizeメモリ確保時の追加サイズ。 SetIncrementSize() と同じです。

TnbSet.h80 行目に定義があります。

◆ CSingleSetT() [2/2]

CSingleSetT ( const CSingleSetT< TYP > &  other)

コピーコンストラクタ

覚え書き
コピー元とバッファを共有します。
引数
otherコピー元

TnbSet.h89 行目に定義があります。

関数詳解

◆ At()

virtual const TYP & At ( INDEX  index) const
virtual

[取得] 要素の参照取得.

覚え書き
非スレッドセーブメソッドです。 複数のスレッドからアクセスがある場合、 Lock() / Unlock() を使用してください。
引数
indexインデックス
戻り値
要素の参照
例外
CIndexOutOfBoundsExceptionインデックスが範囲外であることを示すためにスローされます。

IConstCollectionT< TYP >を実装しています。

TnbSet.h155 行目に定義があります。

◆ begin()

const_iterator begin ( void  ) const
inherited

[反復] 先頭const_iterator.

先頭要素を指す反復子を取得

戻り値
const_iterator

TnbCollection.h246 行目に定義があります。

◆ Compare()

virtual INT_PTR Compare ( const IConstCollectionT< TYP > &  c) const
virtualinherited

[確認] 比較.

コンパレータ( IComparatorT のサブクラス)を使用して、全要素を比較します。

引数
c比較対象
戻り値
自分は c と同じ
1以上自分は c より大きい
0未満自分は c より小さい

IComparableT< TNB::IConstCollectionT< TYP > >を実装しています。

TnbCollection.h595 行目に定義があります。

◆ Delete()

bool Delete ( const TYP &  t)

[削除] 指定要素の削除.

覚え書き
指定の要素を一つ、削除します。
引数
t要素
戻り値
true削除
false未発見

TnbSet.h204 行目に定義があります。

◆ Deserialize()

virtual void Deserialize ( const IDeserializer ds)
virtualinherited

[処理] デシリアライズ

引数
dsデシリアライザー。
例外
CNotSupportExceptionサポートしていないことを示すためにスローされます。

ISerializableを実装しています。

CAttributedVectorT< TYP, ATT >, CAttributedVectorT< BYTE, BYTE >, ICollectionT< TYP >, ICollectionT< bool >, ICollectionT< TNB::CPairT< T, T > >, ICollectionT< TNB::CPairT< KEY, VAL > >, ICollectionT< BYTE >, ICollectionT< DWORD >, ICollectionT< TNB::CArrayPtrHandleT< TYP > >, ICollectionT< WORD >, ICollectionT< TNB::CVectorT >, ICollectionT< TValue >, ICollectionT< CVectorT< BYTE > >, ICollectionT< TNB::CPairT< TNB::CStrT, TNB::CSingleSetT< TNB::CStrT > > >, ICollectionT< TNB::CPairT >, ICollectionT< CStr >, ICollectionT< TParam >, ICollectionT< TNB::CArrayPtrHandleT< TParam > >, ICollectionT< TCHAR >, ICollectionT< TNB::CPairT< PROPID, CTagInfo > >, ICollectionT< TNB::CGrid::TFieldInfo >, ICollectionT< TNB::CPairT< int, HICON > >, ICollectionT< HICON >, ICollectionT< TNB::CMailAddress >, ICollectionT< CAscii >, ICollectionT< TNB::CPairT< TNB::CStrT, CVectorT< BYTE > > >, ICollectionT< TNB::CPairT< CAscii, CAscii > >, ICollectionT< TNB::CMultiFontTextDrawer::TPart >, ICollectionT< POINT >, ICollectionT< TNB::CPointerHandleT< CCursorManager > >, ICollectionT< TNB::CNmea0183::TGpGsv >, ICollectionT< TNB::CPacketCommander::CInner::TTask * >, ICollectionT< TNB::CPointerHandleT< TYP > >, ICollectionT< TNB::CListQueueT< TYP > >, ICollectionT< TInfo >, ICollectionT< TNB::CStrT< TYP > >, ICollectionT< TNB::CPointerHandleT< TNB::CShapeFile::IRecordContent > >, ICollectionT< SOCKET >, ICollectionT< TNB::CPairT< TNB::CStrT, TNB::CMapT > >, ICollectionT< TNB::CPairT< DWORD, TYP > >, ICollectionT< TYP * >, ICollectionT< TNB::CPointerHandleT< TBindWork > >, ICollectionT< CFileInfoArray >, ICollectionT< TNB::CTmlDocuments::TFileInfo::TFunc >, ICollectionT< TFuncInfo >, ICollectionT< EKind >, ICollectionT< TNB::CGrammarAnalyzerT >, ICollectionT< INDEX >, ICollectionT< CVaVaVector >, ICollectionT< CArVaVector >, ICollectionT< CTmlValue >, ICollectionT< char >, ICollectionT< TNB::CPairT< FOURCC, TChunkMap > >, ICollectionT< TNB::CPairT< FOURCC, TNB::CStrT > >, ICollectionT< EAttr >, ICollectionT< TParam * >, ICollectionT< TNB::MFC::CColorfulListBox::CColor::TParam >, ICollectionT< CPointerHandleT< IDrawable > >, ICollectionT< UINT >, ICollectionT< CDrawersVector >, ICollectionT< IDrawable::Ptr >, ICollectionT< TNB::CPointerHandleT< TNB::MFC::CDrawingSubMenu > >, ICollectionT< TNB::CPairT< HTREEITEM, CPointerHandleT< IDrawable > > >, ICollectionT< CArrayPtrHandleT< TCHAR > >, ICollectionT< TNB::CPairT< COLORREF, CPointerHandleT< TPointInfo > > >, CListT< TYP, ATT >, CListT< TNB::CListQueueT< TYP > > (計67項目)で再実装されています。

TnbCollection.h384 行目に定義があります。

◆ end()

const_iterator end ( void  ) const
inherited

[反復] 最後const_iterator.

最後要素の次を指す反復子を取得

戻り値
const_iterator

TnbCollection.h253 行目に定義があります。

◆ Find() [1/5]

INDEX Find ( const IChecker checker,
INDEX  startIndex = 0,
bool  boIsReverse = false 
) const
inherited

[検索] 条件一致要素の検索.

チェッカー( IChecker のサブクラス)を使用して、検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
checkerチェッカー
startIndex検索開始インデックス。
boIsReverse省略すると条件に一致を探します。 trueを指定すると条件不一致を探します。
戻り値
INVALID_INDEX未発見
それ以外発見したインデックス

TnbCollection.h400 行目に定義があります。

◆ Find() [2/5]

INDEX Find ( const IConstCollectionT< TYP > &  t,
const IComparatorT< TYP > &  comparator,
INDEX  startIndex = 0 
) const
inherited

[検索] 指定配列の検索.

コンパレータ( IComparatorT のサブクラス)を使用して、検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
t配列
comparatorコンパレーター
startIndex検索開始インデックス。
戻り値
INVALID_INDEX未発見
それ以外発見したインデックス

TnbCollection.h427 行目に定義があります。

◆ Find() [3/5]

INDEX Find ( const IConstCollectionT< TYP > &  t,
INDEX  startIndex = 0 
) const
inherited

[検索] 指定配列の検索.

IComparatorT::GetDefault() で得られるコンパレータを使用して検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
t配列
startIndex検索開始インデックス。
戻り値
INVALID_INDEX未発見
それ以外発見したインデックス

TnbCollection.h467 行目に定義があります。

◆ Find() [4/5]

INDEX Find ( const TYP &  t,
const IComparatorT< TYP > &  comparator,
INDEX  startIndex = 0 
) const
inherited

[検索] 指定要素の検索.

コンパレータ( IComparatorT のサブクラス)を使用して、検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
t要素
comparatorコンパレーター
startIndex検索開始インデックス。
戻り値
INVALID_INDEX未発見
それ以外発見したインデックス

TnbCollection.h482 行目に定義があります。

◆ Find() [5/5]

INDEX Find ( const TYP &  t,
INDEX  startIndex = 0 
) const
inherited

[検索] 指定要素の検索.

IComparatorT::GetDefault() で得られるコンパレータを使用して検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
t要素
startIndex検索開始インデックス。
戻り値
INVALID_INDEX未発見
それ以外発見したインデックス

TnbCollection.h508 行目に定義があります。

◆ FindMax() [1/2]

INDEX FindMax ( const IComparatorT< TYP > &  comparator,
const TYP &  def 
) const
inherited

[検索] 要素の最大検索.

コンパレータ( IComparatorT のサブクラス)を使用して、比較検索します。

引数
comparatorコンパレーター
def最小値(初期値)
戻り値
INVALID_INDEX未発見
それ以外最大を持つインデックス

TnbCollection.h521 行目に定義があります。

◆ FindMax() [2/2]

INDEX FindMax ( const TYP &  def) const
inherited

[検索] 要素の最大検索.

IComparatorT::GetDefault() で得られるコンパレータを使用して比較検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
def最小値(初期値)
戻り値
INVALID_INDEX未発見
それ以外最大を持つインデックス

TnbCollection.h545 行目に定義があります。

◆ FindMin() [1/2]

INDEX FindMin ( const IComparatorT< TYP > &  comparator,
const TYP &  def 
) const
inherited

[検索] 要素の最小検索.

コンパレータ( IComparatorT のサブクラス)を使用して、比較検索します。

引数
comparatorコンパレーター
def最大値(初期値)
戻り値
INVALID_INDEX未発見
それ以外最小を持つインデックス

TnbCollection.h558 行目に定義があります。

◆ FindMin() [2/2]

INDEX FindMin ( const TYP &  def) const
inherited

[検索] 要素の最小検索.

IComparatorT::GetDefault() で得られるコンパレータを使用して比較検索します。

覚え書き
範囲を限定したい場合、 CConstOffsetAdapterT を使用します。
引数
def最大値(初期値)
戻り値
INVALID_INDEX未発見
それ以外最小を持つインデックス

TnbCollection.h582 行目に定義があります。

◆ Get()

virtual TYP Get ( INDEX  index) const
virtualinherited

[取得] 要素の取得.

覚え書き
非スレッドセーブメソッドです。 複数のスレッドからアクセスがある場合、 GetEx() を使用してください。
引数
indexインデックス
戻り値
内容
例外
CIndexOutOfBoundsExceptionインデックスが範囲外であることを示すためにスローされます。

ICollectionMidT< TYP >, ICollectionMidT< CVectorT< BYTE > >, ICollectionMidT< TParam >, ICollectionMidT< TNB::CListQueueT< TYP > >, ICollectionMidT< BYTE >, ICollectionMidT< CArrayPtrHandleT< TCHAR > >, CConstFileMappingT< TYP >, CConstFileMappingT< BYTE >, CConstFileMappingT< short >, CReaderAdapter, CWriterAdapter, CFileMappingT< TYP >, CMapT< KEY, VAL, INK >, CMapT< TNB::CStrT, TNB::CSingleSetT< TNB::CStrT > >, CMapT< PROPID, CTagInfo >, CMapT< int, HICON >, CMapT< TNB::CStrT, CVectorT< BYTE > >, CMapT< CAscii, CAscii, LPCSTR >, CMapT< TNB::CStrT, TNB::CMapT, LPCTSTR >, CMapT< DWORD, TYP >, CMapT< FOURCC, TChunkMap >, CMapT< FOURCC, TNB::CStrT >, CMapT< HTREEITEM, CPointerHandleT< IDrawable > >, CMapT< COLORREF, CPointerHandleT< TPointInfo > >, CVectorT< TYP >, CVectorT< TNB::CPairT< T, T > >, CVectorT< BYTE >, CVectorT< DWORD >, CVectorT< TNB::CArrayPtrHandleT< TYP > >, CVectorT< WORD >, CVectorT< TNB::CVectorT >, CVectorT< TValue >, CVectorT< TNB::CPairT >, CVectorT< CStr >, CVectorT< TNB::CArrayPtrHandleT< TParam > >, CVectorT< TCHAR >, CVectorT< TNB::CGrid::TFieldInfo >, CVectorT< HICON >, CVectorT< TNB::CMailAddress >, CVectorT< CAscii >, CVectorT< TNB::CMultiFontTextDrawer::TPart >, CVectorT< POINT >, CVectorT< TNB::CPointerHandleT< CCursorManager > >, CVectorT< TNB::CNmea0183::TGpGsv >, CVectorT< TNB::CPacketCommander::CInner::TTask * >, CVectorT< TNB::CPointerHandleT< TYP > >, CVectorT< TInfo >, CVectorT< TParam >, CVectorT< TNB::CStrT< TYP > >, CVectorT< TNB::CPointerHandleT< TNB::CShapeFile::IRecordContent > >, CVectorT< SOCKET >, CVectorT< CVectorT< BYTE > >, CVectorT< TYP * >, CVectorT< TNB::CPointerHandleT< TBindWork > >, CVectorT< CFileInfoArray >, CVectorT< TNB::CTmlDocuments::TFileInfo::TFunc >, CVectorT< TFuncInfo >, CVectorT< EKind >, CVectorT< TNB::CGrammarAnalyzerT >, CVectorT< INDEX >, CVectorT< CVaVaVector >, CVectorT< CArVaVector >, CVectorT< CTmlValue >, CVectorT< char >, CVectorT< EAttr >, CVectorT< TParam * >, CVectorT< TNB::MFC::CColorfulListBox::CColor::TParam >, CVectorT< CPointerHandleT< IDrawable > >, CVectorT< UINT >, CVectorT< CDrawersVector >, CVectorT< IDrawable::Ptr >, CVectorT< TNB::CPointerHandleT< TNB::MFC::CDrawingSubMenu > > (計72項目)で再実装されています。

TnbCollection.h298 行目に定義があります。

◆ GetElements()

virtual size_t GetElements ( size_t  size,
TYP *  _P,
INDEX  offset = 0 
) const
virtualinherited

[取得] 複数要素取り出し.

引数
[in]size取り出すデータの数。
[out]_Pコピーするポインタ。size 分の領域がある必要があります。
[in]offset取り出し開始のインデックス。省略すると0。
戻り値
コピーした数

TnbCollection.h322 行目に定義があります。

◆ GetEqualIndex()

INDEX GetEqualIndex ( const TYP &  t) const

[検索] 指定要素の検索.

覚え書き
開始インデックスを指定したい場合や、比較方法を独自に指定したい場合、 Find() を使います。
引数
t要素
戻り値
INVALID_INDEX未発見
それ以外発見したインデックス

TnbSet.h232 行目に定義があります。

◆ GetEx()

TYP GetEx ( INDEX  index) const
inherited

[取得] 要素の取得.

引数
indexインデックス
戻り値
内容
例外
CIndexOutOfBoundsExceptionインデックスが範囲外であることを示すためにスローされます。

TnbCollection.h309 行目に定義があります。

◆ GetSize()

virtual size_t GetSize ( void  ) const
virtual

[取得] 要素数取得.

戻り値
要素数

IConstCollectionT< TYP >を実装しています。

TnbSet.h142 行目に定義があります。

◆ Has()

bool Has ( const TYP &  t) const

[確認] 値あるか?

引数
t要素
戻り値
false未発見
true発見

TnbSet.h220 行目に定義があります。

◆ Insert() [1/2]

bool Insert ( const IConstCollectionT< TYP > &  t)

[検索] 指定要素挿入.

引数
t要素
戻り値
false失敗
true成功

TnbSet.h310 行目に定義があります。

◆ Insert() [2/2]

INDEX Insert ( const TYP &  t)

[検索] 指定要素挿入.

引数
t要素
戻り値
INVALID_INDEX失敗
それ以外成功。値は挿入したインデックス

TnbSet.h273 行目に定義があります。

◆ InsertElements()

size_t InsertElements ( size_t  size,
const TYP *  P 
)

[検索] 指定要素挿入.

引数
sizeデータ長。
P挿入する内容を指定。
戻り値
INVALID_SIZEエラー。
戻り値
それ以外 削除した数。

TnbSet.h330 行目に定義があります。

◆ InsertEx()

INDEX InsertEx ( const TYP &  t)

[検索] 指定要素挿入.

引数
t要素
戻り値
INVALID_INDEX失敗
それ以外成功。値は挿入したインデックス

TnbSet.h298 行目に定義があります。

◆ IsEmpty()

bool IsEmpty ( void  ) const
inherited

[確認] 要素の有無確認.

覚え書き
GetSize()の戻り値が0か否かでチェックしています。
戻り値
true要素なし
false要素有り

TnbCollection.h346 行目に定義があります。

◆ IsEqual()

virtual bool IsEqual ( const IConstCollectionT< TYP > &  c) const
virtualinherited

[確認] 比較.

コンパレータ( IComparatorT のサブクラス)を使用して、全要素を比較します。

引数
c比較対象
戻り値
true自分は c と同じ
false自分は c と異なる

IComparableT< TNB::IConstCollectionT< TYP > >を再実装しています。

CMapT< CAscii, CAscii, LPCSTR >, CMapT< COLORREF, CPointerHandleT< TPointInfo > >, CMapT< DWORD, TYP >, CMapT< FOURCC, TChunkMap >, CMapT< FOURCC, TNB::CStrT >, CMapT< HTREEITEM, CPointerHandleT< IDrawable > >, CMapT< int, HICON >, CMapT< KEY, VAL, INK >, CMapT< PROPID, CTagInfo >, CMapT< TNB::CStrT, CVectorT< BYTE > >, CMapT< TNB::CStrT, TNB::CMapT, LPCTSTR >, CMapT< TNB::CStrT, TNB::CSingleSetT< TNB::CStrT > >で再実装されています。

TnbCollection.h624 行目に定義があります。

◆ IsInRange()

bool IsInRange ( INDEX  index) const
inherited

[確認] INDEXの有効確認.

覚え書き
GetSize()の戻り値を使用してチェックしています。
引数
indexインデックス
戻り値
true指定Indexは有効。
false指定Indexは無効(範囲外)。

TnbCollection.h358 行目に定義があります。

◆ Lock()

virtual bool Lock ( DWORD  dwTime = INFINITE) const
virtual

[排他] ロック

覚え書き
Lock/Unlockは情報の排他のために使用します。スレッドセーブに するために、一連の情報操作前にLockし操作終了後にUnlockする必要が あります(単発の操作時は大丈夫です)。
引数
dwTimeダミーです。省略してください。
戻り値
常にtrue。

ISynchronizedを実装しています。

TnbSet.h115 行目に定義があります。

◆ OnFoundEqual()

virtual INDEX OnFoundEqual ( INDEX  index)
protectedvirtual

[通知] 同じ値発見通知.

引数
index同じ値のインデックス
戻り値
Insert() の戻り値

TnbSet.h355 行目に定義があります。

◆ operator size_t()

operator size_t ( void  ) const
inherited

[取得] 要素数取得.

戻り値
要素数

TnbCollection.h268 行目に定義があります。

◆ operator!=()

bool operator!= ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
true自分は t と異なる
false自分は t と同じ

TnbComparable.h98 行目に定義があります。

◆ operator-()

INT_PTR operator- ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
自分は t と同じ
1以上自分は t より大きい
0未満自分は t より小さい

TnbComparable.h82 行目に定義があります。

◆ operator<()

bool operator< ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
true自分は t より小さい
false自分は t と同じか大きい

TnbComparable.h106 行目に定義があります。

◆ operator<=()

bool operator<= ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
true自分は t と同じか小さい
false自分は t より大きい

TnbComparable.h114 行目に定義があります。

◆ operator=()

CSingleSetT & operator= ( const CSingleSetT< TYP > &  other)

[代入] 代入

覚え書き
自インスタンスで管理しているバッファを開放し、
代入元の情報を共有するようになります。
引数
other代入元
戻り値
自分の参照

TnbSet.h101 行目に定義があります。

◆ operator==()

bool operator== ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
true自分は t と同じ
false自分は t と異なる

TnbComparable.h90 行目に定義があります。

◆ operator>()

bool operator> ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
true自分は t より大きい
false自分は t と同じか小さい

TnbComparable.h122 行目に定義があります。

◆ operator>=()

bool operator>= ( const TNB::IConstCollectionT< TYP > &  t) const
inherited

[確認] 比較

引数
t比較対象
戻り値
true自分は t と同じか大きい
false自分は t より小さい

TnbComparable.h130 行目に定義があります。

◆ operator[]()

const TYP & operator[] ( INDEX  index) const

[取得] 要素の参照取得.

覚え書き
非スレッドセーブメソッドです。 複数のスレッドからアクセスがある場合、 Lock() / Unlock() を使用してください。
引数
indexインデックス
戻り値
参照。
例外
CIndexOutOfBoundsExceptionインデックスが範囲外であることを示すためにスローされます。

TnbSet.h168 行目に定義があります。

◆ ReferBuffer()

virtual const TYP * ReferBuffer ( void  ) const
virtual

[取得] データアドレス取得.

覚え書き
このアドレスの内容は書き換えてはいけません。
取得したアドレスは delete で開放してはいけません。
取得したアドレスは本クラスの計算等、操作すると無効になります。
戻り値
アドレス。

ISequenceCollectionT< TYP >を実装しています。

TnbSet.h133 行目に定義があります。

◆ Remove()

bool Remove ( INDEX  index)

[削除] 要素一つ削除.

覚え書き
非スレッドセーブメソッドです。 複数のスレッドからアクセスがある場合、 RemoveEx() を使用してください。
引数
indexインデックス
戻り値
falseエラー。
true成功。

TnbSet.h181 行目に定義があります。

◆ RemoveAll()

virtual bool RemoveAll ( void  )
virtual

[削除] 空化

覚え書き
自インスタンスで管理しているバッファを空にします。
戻り値
true成功
false失敗

TnbSet.h192 行目に定義があります。

◆ Serialize()

virtual void Serialize ( ISerializer _sr) const
virtualinherited

[処理] シリアライズ

引数
[out]_srシリアライザー。
例外
CTnbException失敗時は、任意のスローの可能性があります。

ISerializableを実装しています。

CAttributedVectorT< TYP, ATT >, CAttributedVectorT< BYTE, BYTE >, CListT< TYP, ATT >, CListT< TNB::CListQueueT< TYP > >, CPointerVectorT< TYP >, CPointerVectorT< CCursorManager >, CPointerVectorT< TNB::CShapeFile::IRecordContent >, CPointerVectorT< TBindWork >, CPointerVectorT< TNB::MFC::CDrawingSubMenu >で再実装されています。

TnbCollection.h368 行目に定義があります。

◆ Unlock()

virtual void Unlock ( void  ) const
virtual

[排他] アンロック

ISynchronizedを実装しています。

TnbSet.h121 行目に定義があります。

メンバ詳解

◆ m_data

CVectorT<TYP> m_data
protected

データ

TnbSet.h360 行目に定義があります。