使用反映發出定義建構函式
建構函式是使用 TypeBuilder.DefineConstructor 方法定義。 DefineConstructor 會傳回 ConstructorBuilder。 DefineConstructor 要求呼叫端,使用 MethodAttributes 列舉型別來指定建構函式屬性 (Attribute)。
類別的預設建構函式是使用 TypeBuilder.DefineDefaultConstructor 方法定義。 DefineDefaultConstructor 傳回 ConstructorBuilder。 預設建構函式只是呼叫父類別的建構函式。 如果呼叫端不定義的話,Common Language Runtime 自動定義類別的預設建構函式。
屬性
執行階段為建構函式設定屬性 MethodAttributes.SpecialName。
私用建構函式使用 MethodAttributes.Private 屬性來指定。 如需其他可視性屬性的詳細資訊,請參閱 MethodAttributes 列舉型別的說明。
已知的問題
雖然 ConstructorBuilder 衍生自 ConstructorInfo,一些定義於 ConstructorInfo 類別的抽象方法並不在 ConstructorBuilder 中完整實作。 這些 ConstructorBuilder 方法會擲回 NotSupportedException。 擷取含有建構函式的型別並反映它,即可獲得想要的功能。 例如,ConstructorBuilder.Invoke 方法沒有被完整實作。
自訂修飾詞目前不支援。