CodeClass2.AddFunction, méthode (String, vsCMFunction, Object, Object, vsCMAccess, Object)
Crée une fonction dans la classe.
Espace de noms : EnvDTE80
Assembly : EnvDTE80 (dans EnvDTE80.dll)
Syntaxe
'Déclaration
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
Paramètres
- Name
Type : System.String
Obligatoire.Nom de la nouvelle fonction.
- Kind
Type : EnvDTE.vsCMFunction
Obligatoire.Constante vsCMFunction indiquant le type de fonction, par exemple si la fonction est un accesseur GET de propriété, une méthode, etc.
- Type
Type : System.Object
Obligatoire.Constante vsCMTypeRef indiquant le type de données retourné par la fonction.Il peut s'agir d'un objet CodeTypeRef, d'une constante vsCMTypeRef ou d'un nom de type qualifié complet.
- Position
Type : System.Object
Facultatif.Valeur par défaut = 0.Élément de code après lequel la nouvelle fonction doit être ajoutée.
Si la valeur est de type Long, Position indique l'élément après lequel le nouvel élément doit être ajouté.
Comme la comptabilisation des collections commence à 1, passer la valeur 0 indique que le nouvel élément doit être placé au début de la collection.La valeur -1 signifie que la fonction doit être placée à la fin.
- Access
Type : EnvDTE.vsCMAccess
Facultatif.Constante vsCMAccess.
- Location
Type : System.Object
Facultatif.Emplacement de la nouvelle fonction.
Valeur de retour
Type : EnvDTE.CodeFunction
Objet CodeFunction.
Implémentations
CodeClass.AddFunction(String, vsCMFunction, Object, Object, vsCMAccess, Object)
Notes
Le code Visual C++ natif nécessite le format séparé par deux-points (::) pour ses noms de types qualifiés complets. Tous les autres langages prennent en charge le format séparé par des points.
L'exactitude des arguments est déterminée par le langage, au-delà du modèle de code.
Notes
Les valeurs d'éléments de modèle de code, tels que des classes, des structures, des fonctions, des attributs, des délégués, etc., peuvent être non déterminables après certains types de modifications, ce qui signifie qu'il n'est pas certain que leurs valeurs resteront inchangées. Pour plus d'informations, consultez la section Les valeurs d'élément de modèle de code peuvent être modifiées de la rubrique Découverte de code à l'aide du modèle de code (Visual Basic).
Exemples
[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);
}
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
Autres ressources
Comment : compiler et exécuter les exemples de code du modèle objet Automation
Découverte de code à l'aide du modèle de code (Visual Basic)