Formazione
Modulo
Chiamare i metodi dalla libreria di classi .NET usando C# - Training
Usare le funzionalità nella libreria di classi .NET chiamando metodi che restituiscono valori, accettano parametri di input e altro ancora.
Questo browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
Per la programmazione .NET, Visual C++ in Visual Studio 2017 supporta la creazione di assembly misti usando l'opzione del compilatore /clr (compilazione Common Language Runtime). Le opzioni /clr:pure e clr:safe sono deprecate in Visual Studio 2015 e non supportate in Visual Studio 2017. Se il codice deve essere sicuro o verificabile, è consigliabile convertirlo in C#.
Gli assembly misti (compilati con /clr), contengono sia parti non gestite che gestite, consentendo loro di usare funzionalità .NET, ma contengono ancora codice nativo. In questo modo, le applicazioni e i componenti possono essere aggiornati per usare le funzionalità .NET senza richiedere la riscrizione dell'intero progetto. L'uso di Visual C++ per combinare codice gestito e nativo in questo modo è denominato Interoperabilità C++. Per altre informazioni, vedere Assembly misti (nativi e gestiti) e Interoperabilità nativa e .NET.
Le chiamate effettuate da assembly gestiti a DLL native tramite P/Invoke verranno compilate, ma potrebbero non riuscire in fase di esecuzione a seconda delle impostazioni di sicurezza.
Esiste uno scenario di codifica che passerà il compilatore, ma che comporterà un assembly non verificabile: la chiamata di una funzione virtuale tramite un'istanza dell'oggetto usando l'operatore di risoluzione dell'ambito. Ad esempio: MyObj -> A::VirtualFunction();
.
Formazione
Modulo
Chiamare i metodi dalla libreria di classi .NET usando C# - Training
Usare le funzionalità nella libreria di classi .NET chiamando metodi che restituiscono valori, accettano parametri di input e altro ancora.
Documentazione
Interoperabilità con altri linguaggi .NET (C++/CLI)
Altre informazioni su: Interoperabilità con altri linguaggi .NET (C++/CLI)
Altre informazioni su: Attività C++/CLI
Interoperabilità .NET e nativa
Altre informazioni su: Interoperabilità nativa e .NET