Método CodeClass2.AddFunction
Cria uma nova função na classe.
Namespace: EnvDTE80
Assembly: EnvDTE80 (em EnvDTE80.dll)
Sintaxe
'Declaração
Function AddFunction ( _
Name As String, _
Kind As vsCMFunction, _
Type As Object, _
Position As Object, _
Access As vsCMAccess, _
Location As Object _
) As CodeFunction
CodeFunction AddFunction(
string Name,
vsCMFunction Kind,
Object Type,
Object Position,
vsCMAccess Access,
Object Location
)
CodeFunction^ AddFunction(
String^ Name,
vsCMFunction Kind,
Object^ Type,
Object^ Position,
vsCMAccess Access,
Object^ Location
)
abstract AddFunction :
Name:string *
Kind:vsCMFunction *
Type:Object *
Position:Object *
Access:vsCMAccess *
Location:Object -> CodeFunction
function AddFunction(
Name : String,
Kind : vsCMFunction,
Type : Object,
Position : Object,
Access : vsCMAccess,
Location : Object
) : CodeFunction
Parâmetros
Name
Tipo: StringNecessário. O nome da nova função.
Kind
Tipo: vsCMFunctionNecessário. A constante de vsCMFunction que indica o tipo de função, como se a função é uma getter de propriedade, um método, e assim por diante.
Type
Tipo: ObjectNecessário. Uma constante de vsCMTypeRef que indica o tipo de dados que a função retorna. Esse pode ser um objeto de CodeTypeRef , uma constante de vsCMTypeRef , ou um nome de tipo totalmente qualificado.
Position
Tipo: ObjectOpcional. Padrão = 0. O elemento de código depois do qual adicionar a nova função.
Se o valor for um longo, então Position indica o elemento depois do qual adicionar o novo elemento.
Como as coleções começam a contagem em 1, passar 0 indica que o novo elemento deve ser colocado no topo da coleção. Um valor de -1 significa que a função deve ser colocado no final.
Access
Tipo: vsCMAccessOpcional. Uma constante de vsCMAccess .
Location
Tipo: ObjectOpcional. Local da nova função.
Valor de retorno
Tipo: CodeFunction
Um objeto CodeFunction.
Comentários
O Visual C++ nativo requer o formato separado por dois pontos de :: () para seus nomes totalmente qualificados do tipo. Todos os outros idiomas dão suporte ao formato período- separado.
A exatidão dos argumentos é determinada pelo idioma atrás do modelo de código.
Dica
Os valores de código de modelagem elementos como classes, estruturas, funções, atributos, representantes, e assim por diante podem ser não determinísticas depois de fazer determinados tipos as edições do, o que significa que seus valores não podem ser confiáveis em para permanecer sempre os mesmos.Para obter mais informações, veja que os valores do elemento do modelo de código da seção podem ser alteradas em Descobrindo código usando o modelo de código (Visual Basic).
Exemplos
[Visual Basic]
Sub AddFunctionExample2(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 a new member function.
cls.AddFunction("TestFunction", _
vsCMFunction.vsCMFunctionFunction, _
vsCMTypeRef.vsCMTypeRefInt)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
[C#]
public void AddFunctionExample2(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 a new member function.
cls.AddFunction("TestFunction",
vsCMFunction.vsCMFunctionFunction,
vsCMTypeRef.vsCMTypeRefInt, -1,
vsCMAccess.vsCMAccessDefault, null);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiável.
Consulte também
Referência
Outros recursos
Como compilar e executar os exemplos de código do modelo de objeto Automation