當您在 RPC 中使用 [out]-only 參考指標 Microsoft時,產生的伺服器存根只會配置可從參考指標存取的第一層指標。 更深層層級的指標不會由存根配置,但必須由伺服器應用層配置。 例如,假設介面指定 [out]-only 參考指標陣列:
/* IDL file (fragment) */
typedef [ref] short * PREF;
Proc1([out] PREF array[10]);
在此範例中,伺服器存根會配置 10 個指標的記憶體,並將每個指標的值設定為 null。 伺服器應用程式必須為指標所參考的 10 短 整數配置記憶體,然後將 10 個指標設定為指向整數。
當 [out]-only 數據結構包含巢狀參考指標時,伺服器存根只會配置可從參考指標存取的第一個指標。 例如:
/* IDL file (fragment) */
typedef struct
{
[ref] small * psValue;
} STRUCT1_TYPE;
typedef struct
{
[ref] STRUCT1_TYPE * ps1;
} STRUCT_TOP_TYPE;
Proc2([out, ref] STRUCT_TOP_TYPE * psTop);
在上述範例中,伺服器存根會配置指標 psTop 和 結構 STRUCT_TOP_TYPE。 STRUCT_TOP_TYPE 中的參考指標 ps1 設為 null。 伺服器存根不會配置數據結構的每個層級,也不會配置 STRUCT1_TYPE 或其內嵌指標,psValue。