다음을 통해 공유


CodeVariable2.InitExpression 속성

요소의 초기화 코드를 정의하는 개체를 가져오거나 설정합니다.

네임스페이스:  EnvDTE80
어셈블리:  EnvDTE80(EnvDTE80.dll)

구문

‘선언
Property InitExpression As Object
    Get
    Set
Object InitExpression { get; set; }
property Object^ InitExpression {
    Object^ get ();
    void set (Object^ value);
}
abstract InitExpression : Object with get, set
function get InitExpression () : Object
function set InitExpression (value : Object)

속성 값

형식: System.Object
코드 변수에 대한 초기화 식을 정의하는 개체입니다.

구현

CodeVariable.InitExpression

설명

이 값은 식 개체에 대해 CodeElement이거나 문자열이어야 합니다. 이 값을 문자열로 설정하는 경우, 변수에 아직 초기화 식이 없으면 InitExpression을 구현하는 데 등호나 세미콜론과 같은 필수 구문이 삽입됩니다.

어떤 언어를 사용하고 있는지와 제공되는 문자열에 대해 어떤 구문 또는 의미 검사를 수행하는지에 따라 InitExpression을 설정하는 데 실패할 수도 있습니다. 문자열을 검사하는 데에는 언어가 필요하지 않으며, 문자열은 항상 언어에 종속되므로 문자열에 잘못된 내용이 있으면 이 속성을 설정하는 경우 정의되지 않은 동작이 발생할 수 있습니다.

이 속성을 CodeElement로 설정하면 코드 모델의 언어 구현에 따라 CodeElement를 새로 만들어야 하는지 여부가 결정됩니다. 이미 소스 파일에 있는 CodeElement를 제공할 경우 일부 언어에서는 의미를 복사할 수 있습니다.

참고

클래스, 구조체, 함수, 특성, 대리자 등의 코드 모델 요소를 특정한 방식으로 편집한 후에는 요소의 값이 명확하지 않을 수 있습니다. 즉, 요소의 값이 항상 같다고 할 수 없습니다. 자세한 내용은 코드 모델을 사용하여 코드 검색(Visual Basic)의 "코드 모델 요소 값이 변경될 수 있음" 단원을 참조하십시오.

예제

Sub InitExpressionExample(ByVal dte As DTE2)

    ' Before running this example, open a code document from a project
    ' and place the insertion point inside a class definition.
    Try
        ' Retrieve the CodeClass at the insertion point.
        Dim sel As TextSelection = _
            CType(dte.ActiveDocument.Selection, TextSelection)
        Dim cls As CodeClass = _
            CType(sel.ActivePoint.CodeElement( _
            vsCMElement.vsCMElementClass), CodeClass)

        ' Create and initialize a new member variable.
        Dim byt As CodeVariable = _
            cls.AddVariable("var1", vsCMTypeRef.vsCMTypeRefByte)
        byt.InitExpression = "255"
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
public void InitExpressionExample(DTE2 dte)
{
    // Before running this example, open a code document from a project
    // and place the insertion point inside a class definition.
    try
    {
        // Retrieve the CodeClass at the insertion point.
        TextSelection sel = 
            (TextSelection)dte.ActiveDocument.Selection;
        CodeClass cls = 
            (CodeClass)sel.ActivePoint.get_CodeElement(
            vsCMElement.vsCMElementClass);

        // Create and initialize a new member variable.
        CodeVariable byt = cls.AddVariable("var1", 
            vsCMTypeRef.vsCMTypeRefByte, -1, 
            vsCMAccess.vsCMAccessPublic, null);
        byt.InitExpression = "255";
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework 보안

  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

참고 항목

참조

CodeVariable2 인터페이스

InitExpression 오버로드

EnvDTE80 네임스페이스

기타 리소스

방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행

코드 모델을 사용하여 코드 검색(Visual Basic)

코드 모델을 사용하여 코드 검색(Visual C#)