C++/CLI
linguagem de programação
C++/CLI (Common Language Infrastructure) é uma variante da linguagem C++ criada pela Microsoft em substituição às Managed C++ (MC++). C++/CLI está normalizada pela ECMA como ECMA-372. Atualmente está disponível em todas as edições do Visual Studio a partir do 2005 (também está incluído nas edições Express).
C++/CLI | |
---|---|
Paradigma | Abstração de dados, Orientação a objeto |
Última versão | ECMA-372 |
Criado por | Microsoft |
Principais implementações | Visual C++ 2005 e superiores |
Influenciada por | C++, Managed C++ |
Diferenças entre Managed C++ e C++/CLI
editar// Managed extensions for C++
#using <mscorlib.dll>
using namespace System::Collections;
__gc class referencetype
{
protected:
String* stringVar;
int intArr __gc[];
ArrayList* doubleList;
public:
referencetype(String* str, int* pointer, int number) // Qual é managed???
{
doubleList = new ArrayList();
System::Console::WriteLine(str->Trim() + number.ToString());
}
};
// C++/CLI
// Com o VC++ 2005, a linha seguinte é desnecessária
// o compilador usa a DLL "mscorlib.dll" automaticamente
#using <mscorlib.dll>
using namespace System::Collections::Generic;
ref class referencetype
{
protected:
String^ stringVar;
array<int>^ intArr;
List<double>^ doubleList;
public:
referencetype(String^ str, int* pointer, int number) // Ambiguidade inexistente
{
doubleList = gcnew List<double>();
System::Console::WriteLine(str->Trim() + number);
}
};
Ligações externas
editar- ECMA 372: C++/CLI Language Specification (em inglês)
- MSDN documentação para C++/CLI (em inglês)