C++/CLI

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
C++/CLI
Paradigma Abstração de dados,
Orientação a objeto
Última versão ECMA-372
Criado por Microsoft
Compiladores Visual C++ 2005 e superiores
Influenciada por C++, Managed C++

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).

Diferenças entre Managed C++ e C++/CLI[editar | editar código-fonte]

// 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 | editar código-fonte]