Compartir a través de


CodeFunction.FunctionKind (Propiedad)

Obtiene una enumeración que describe cómo se utiliza una función.

Espacio de nombres:  EnvDTE
Ensamblado:  EnvDTE (en EnvDTE.dll)

Sintaxis

'Declaración
ReadOnly Property FunctionKind As vsCMFunction
vsCMFunction FunctionKind { get; }
property vsCMFunction FunctionKind {
    vsCMFunction get ();
}
abstract FunctionKind : vsCMFunction with get
function get FunctionKind () : vsCMFunction

Valor de propiedad

Tipo: EnvDTE.vsCMFunction
Valor vsCMFunction.

Comentarios

FunctionKind devuelve el tipo de la función, como Property Get, Property Let, Sub o Function.

Los valores vsCMFunction se asocian bit a bit mediante el operador OR. Visual C++ combina algunos de estos valores para describir una función con precisión. Por ejemplo: virtual int MyProc() const = 0;.

MyProc da como resultado un valor de (vsCMFunctionFunction | vsCMFunctionVirtual | vsCMFunctionConstant | vsCMFunctionPure | vsCMFunctionTopLevel).

Otro ejemplo es: inline void AnotherOne().

Produce un valor de (vsCMFunctionSub | vsCMFunctionInline, vsCMFunctionTopLevel).

Nota

Los valores de los elementos de modelo de código como clases, structs, funciones, atributos, delegados, etc., pueden ser no deterministas una vez realizados determinados tipos de modificaciones; esto significa que no se puede confiar en que sus valores se mantengan siempre igual.Para obtener más información, vea la sección Los valores de elementos de modelo de código pueden cambiar, en Detectar código utilizando el modelo de código (Visual Basic).

Ejemplos

 Sub FunctionKindExample(ByVal dte As DTE2)

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

        MsgBox(fun.Name & "'s kind is " & fun.FunctionKind.ToString())
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
 public void FunctionKindExample(DTE2 dte)
{
    // Before running this example, open a code document from a project
    // and place the insertion point inside a function.
    try
    {
        // Retrieve the CodeFunction at the insertion point.
        TextSelection sel = 
            (TextSelection)dte.ActiveDocument.Selection;
        CodeFunction fun = 
            (CodeFunction)sel.ActivePoint.get_CodeElement(
            vsCMElement.vsCMElementFunction);

        MessageBox.Show(fun.Name + "'s kind is " + 
            fun.FunctionKind.ToString());
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Seguridad de .NET Framework

Vea también

Referencia

CodeFunction Interfaz

EnvDTE (Espacio de nombres)

Otros recursos

Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización

Detectar código utilizando el modelo de código (Visual Basic)

Detectar código utilizando el modelo de código (Visual C#)