CHString::GetBuffer メソッド (chstring.h)

[CHString クラスは WMI プロバイダー フレームワークの一部であり、現在最終的な状態と見なされています。これらのライブラリに影響を与える、セキュリティ関連以外の問題に対しては、それ以上の開発、機能強化、または更新プログラムは利用できません。 すべての新しい開発には、MI API を使用する必要があります。]

GetBuffer メソッドは、CHString オブジェクトの内部文字バッファーへのポインターを返します。

構文

LPWSTR  throw(CHeap_Exception) GetBuffer(
  int nMinBufLength
);

パラメーター

nMinBufLength

文字バッファーの最小サイズ (文字数)。 この値には 、NULL 終端記号のスペースは含まれません。

戻り値

オブジェクトの (NULL で終わる) 文字バッファーへの LPWSTR ポインター。

注釈

返された LPWSTRconst ではなく、 CHString コンテンツを直接変更できます。

GetBuffer によって返されるポインターを使用して文字列の内容を変更する場合は、他の CHString メソッドを使用する前に ReleaseBuffer を呼び出す必要があります。

ReleaseBuffer の呼び出し後、追加の CHString 操作によって CHString バッファーが再割り当てされる可能性があるため、GetBuffer によって返されるアドレスが無効になる可能性があります。 CHString 文字列の長さを変更しない場合、バッファーは再割り当てされません。 CHString オブジェクトが破棄されると、バッファー メモリが自動的に解放されます。

文字列の長さを自分で追跡する場合は、終端の NULL 文字を追加しないでください。 ただし、 ReleaseBuffer を使用してバッファーを解放するときは、最後の文字列の長さを指定する必要があります。 終端 の NULL 文字を追加する場合は、 ReleaseBuffer に長さとして –1 を渡す必要があります。これにより、バッファーで wcslen が呼び出され、その長さが決定されます。

要件

要件
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー chstring.h (FwCommon.h を含む)
Library FrameDyn.lib
[DLL] FrameDynOS.dll;FrameDyn.dll

こちらもご覧ください

CHString

CHString::GetBufferSetLength

CHString::ReleaseBuffer