共用方式為


編譯器錯誤 C3381

'identifier':元件存取規範僅適用於以 /clr 選項編譯的程序代碼

備註

型別是使用存取規範來宣告或定義,只有在使用 編譯的程式代碼中才允許。/clr

此錯誤可能是在 或 public內的存取規範之後,錯放 protectedprivate: 關鍵詞或遺漏冒號 (class) 所struct造成。

在 C++/CLI 中,原生類型可以在元件外部顯示,但您只能在編譯中 /clr 指定原生類型的元件存取權。 如需詳細資訊,請參閱 類型可見性/clr (Common Language Runtime 編譯)

範例

下列範例會產生 C3381。 若要修正此問題,請先從定義中移除public規範,或使用 選項進行編譯class A/clr 接下來,在 後面 private 新增冒號,以指定 的 class B {} b;存取權。 這是因為巢狀類別在其宣告中不能有元件存取規範。

// C3381.cpp
// compile with: /c
public class A {   // C3381
    private class B {} b;   // C3381
};