ホーム › System.Com.CallObj › CALLFRAME_COPY
CALLFRAME_COPY
列挙型メンバー 2
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| CALLFRAME_COPY_NESTED | 1 | 0x1 | クライアントは、コピーされた呼び出しフレームの有効期間が親フレームの有効期間に入れ子になるような方法でそのフレームを使用する責任を負い、これによりデータが共有可能になります。このフラグを使用すると、実際のパラメーターのデータを巧みに共有することで、非常に大きな最適化が可能になり、メモリの割り当てを回避できます。 ディープコピーが保証されるのは、ソースフレームから推移的に到達可能なインターフェイスポインターのみです。したがって、それらはコピー側ではソースフレームとは別のメモリに格納されます。それ以外のデータ型は、コピー操作が十分に高度であれば、コピーされたフレームでも実際にはソースとメモリを共有することがあります。 |
| CALLFRAME_COPY_INDEPENDENT | 2 | 0x2 | コピーされた呼び出しフレームは、親フレームとは独立した有効期間を持ちます。 |
公式ドキュメント
コピーされた呼び出しフレームのデータを親フレームのデータと共有できるかどうかを、親フレームに対する有効期間の依存関係によって決定します。
解説(Remarks)
この結果として、これらの CALLFRAME_COPY フラグのいずれを ICallFrame::Copy に渡した場合でも、親フレームに存在するインターフェイスポインターに影響を与えることなく、インターフェイスポインターを変更できます。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum CALLFRAME_COPY : int {
CALLFRAME_COPY_NESTED = 1,
CALLFRAME_COPY_INDEPENDENT = 2
} CALLFRAME_COPY;public enum CALLFRAME_COPY : int
{
CALLFRAME_COPY_NESTED = 1,
CALLFRAME_COPY_INDEPENDENT = 2,
}Public Enum CALLFRAME_COPY As Integer
CALLFRAME_COPY_NESTED = 1
CALLFRAME_COPY_INDEPENDENT = 2
End Enumimport enum
class CALLFRAME_COPY(enum.IntEnum):
CALLFRAME_COPY_NESTED = 1
CALLFRAME_COPY_INDEPENDENT = 2// CALLFRAME_COPY
pub const CALLFRAME_COPY_NESTED: i32 = 1;
pub const CALLFRAME_COPY_INDEPENDENT: i32 = 2;// CALLFRAME_COPY
const (
CALLFRAME_COPY_NESTED int32 = 1
CALLFRAME_COPY_INDEPENDENT int32 = 2
)const
CALLFRAME_COPY_NESTED = 1;
CALLFRAME_COPY_INDEPENDENT = 2;// CALLFRAME_COPY
pub const CALLFRAME_COPY_NESTED: i32 = 1;
pub const CALLFRAME_COPY_INDEPENDENT: i32 = 2;const
CALLFRAME_COPY_NESTED* = 1
CALLFRAME_COPY_INDEPENDENT* = 2enum CALLFRAME_COPY : int {
CALLFRAME_COPY_NESTED = 1,
CALLFRAME_COPY_INDEPENDENT = 2,
}#define global CALLFRAME_COPY_NESTED 0x1
#define global CALLFRAME_COPY_INDEPENDENT 0x2