Microsoft Visual C++

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 23:12 16 abr 2020 por Semibot (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.
Visual C++
Parte de Microsoft Visual Studio
Información general
Tipo de programa Entorno de desarrollo integrado
Desarrollador Microsoft
Lanzamiento inicial febrero de 1994
Licencia EULA
Estado actual Activo
Información técnica
Programado en ASM/C/C++
Versiones
Última versión estable Visual Studio 2013 ( Septiembre del 2013)
Serie Microsoft Visual Studio
Microsoft C
Visual C++
Enlaces

Visual C++ (también conocido como MSVC++, Microsoft Visual C++) es un entorno de desarrollo integrado (IDE) para lenguajes de programación C, C++ y C++/CLI.

Visual C++ engloba el desarrollo de aplicaciones hechas en C, C++ y C++/CLI en el entorno Windows. Visual C++ incluye además las bibliotecas de Windows (WinApi), las bibliotecas MFC y el entorno de desarrollo para .NET Framework. Visual C++ cuenta con su propio compilador (de igual nombre) y otras herramientas como IntelliSense, TeamFoundation Server, Debug,... Además provee de bibliotecas propias de cada versión del sistema operativo y sockets. Como otros compiladores, se le pueden añadir nuevas bibliotecas como DirectX, wxWidgets o SDL.

Cuenta con una versión Express, llamada Microsoft Visual C++ Express Edition, la cual es gratuita y se puede descargar desde el sitio de Microsoft.

El lenguaje de programación utilizado por esta herramienta, de igual nombre, está basado en C++ y es compatible en la mayor parte de su código con este lenguaje, a la vez que su sintaxis es exactamente igual. En algunas ocasiones esta incompatibilidad impide que otros compiladores, sobre todo en otros sistemas operativos, funcionen bien con código desarrollado en este lenguaje.

Una de las nuevas implementaciones es que el llamado código gestionado (managed code) hace uso de una de las mejores herramientas dentro de .NET, el recolector de basura (garbage collector).

Cómo declarar una clase gestionada por el recolector de basura Visual Studio 2005:

ref class MiClase
{
   // Código
}

en Visual Studio 2003:

__gc class MiClase
{
   // Código
}

La palabra reservada ref (ó __gc) le dice al compilador que esa clase será manejada por el recolector de basura, aunque, y a diferencia de otros lenguajes de .NET como C#, aún puede seguir llamando al destructor con delete.

Ahora veamos un ejemplo del programa HolaMundo con Visual C++ en C++/CLI.

using namespace System;
ref class MiClase
{
    public : void HolaMundo()
    {
        Console::WriteLine("Hola, mundo");
    }
};
int main()
{
    MiClase^ objeto = gcnew MiClase();
    objeto->HolaMundo();
    return 0;
}

Ahora veamos un ejemplo en ANSI C.

#include <stdio.h>

int main()
{
 printf("Hola, mundo");
}

Y un ejemplo en C++

#include <iostream>

using namespace std;
int main()
{
 cout<<"Hola, mundo"<<endl;
}

Las diferencias son pocas; en cuanto a sintaxis, el símbolo ^ indica que se está creando un puntero. Se hace de esta forma porque los punteros nativos de C++ son difíciles de seguir por el recolector de basura, así que se debe manejar de manera diferente. Para acceder a los métodos y miembros de la clase se usa -> cuando se tiene un puntero, al igual que en C++ nativo.

La palabra reservada gcnew crea el objeto devolviendo un puntero hacia este; gcnew se debe de usar para instar una clase manejada por el recolector de basura, o sea que ha sido declarada ref class. Si la clase no es manejada class se usa new y * para crear un puntero, al igual que en C++.

Véase también

Enlaces externos