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

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

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

構文

LPWSTR  throw(CHeap_Exception) GetBuffer(
  int nMinBufLength
);

パラメーター

nMinBufLength

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

戻り値

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

注釈

返された LPWSTR は const ではなく、 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