다음을 통해 공유


인수가 필요하므로 개체 이니셜라이저 식에서 '<propertyname>' 속성을 초기화할 수 없습니다.

업데이트: 2007년 11월

Property '<propertyname>' cannot be initialized in an object initializer expression because it requires arguments

개체 이니셜라이저 목록에 초기화된 멤버는 필드 또는 속성이어야 하며 속성 멤버는 매개 변수를 가질 수 없습니다. 예를 들어 기본 속성은 인수를 필요로 하기 때문에 개체 이니셜라이저 목록에서 초기화할 수 없습니다. 자세한 내용은 기본 속성을 참조하십시오.

오류 ID: BC30992

이 오류를 해결하려면

  • 초기화 목록에서 인수를 갖는 모든 속성을 제거합니다.

예제

다음 클래스에는 정수 인수를 필요로 하는 기본 속성 defaultProp이 포함되어 있습니다.

    Public Class SomeStrings
        Private myStrings() As String
        Sub New(ByVal size As Integer)
            ReDim myStrings(size)
        End Sub
        Default Property defaultProp(ByVal index As Integer) As String
            Get
                Return myStrings(index)
            End Get
            Set(ByVal Value As String)
                myStrings(index) = Value
            End Set
        End Property
    End Class

기본 속성은 인수를 필요로 하기 때문에 다음 선언은 오류를 발생시킵니다.

' Dim strs As New SomeStrings(2) With { .defaultProp = "One" }

참고 항목

개념

기본 속성

속성 및 속성 프로시저

개체 이니셜라이저: 명명된 형식과 익명 형식