24 noviembre 2014

C++ para C# 1: Hola, Mundo

¿Por qué C++ para C#?


Porque C# me parece más razonable para comenzar a programar que C++, porque C# tiene una curva de aprendizaje más progresiva, pero permite adquirir buenos fundamentos. Eso no quita que algunos estudiantes que se hayan formando en C# deban trabajar con C++ más adelante, durante su vida laboral. Este texto pretende ayudarles.

¿Cómo cambia un "Hola, Mundo" de C# a C++?


Escribir un texto en pantalla es el primer ejercicio que se suele realizar en casi cualquier lenguaje de programación, cuando uno está comenzando a aprender. En C# se haría con


class HolaMundo {
    public static void Main()  {
        System.Console.WriteLine("Hola, Mundo");
    }
}


y el equivalente en C++ es


#include <iostream>
int main () 
{
    std::cout << "Hola, mundo" << std::endl;
    return 0;
}

Las diferencias son:


  • Como vamos a usar órdenes de entrada (desde teclado) y salida (por pantalla), deberemos incluir "iostream", y de eso se encarga la orden "#include <iostream>"
  • El cuerpo del programa se llamará "main", en minúsculas.
  • Para escribir el texto en pantalla se usa "std::cout", y los datos que queremos escribir se indican separados por símbolos de "<<". El simbolo especial "std::endl" representa un avance de línea.
  • El programa terminará con "return 0;", para indicar que todo ha funcionado correctamente.



Si no queremos tener que escribir "std::" antes de cada orden "cout" y antes de "endl", podemos incluir la línea "using namespace std;" tras los "include", así:

#include <iostream>
using namespace std;
 
int main () 
{
    cout << "Hola, mundo" << endl;
    return 0;
}


¿Y para probar este programa que hemos creado en C++?


La recomendación es usar una máquina virtual de Linux, por ejemplo usando VirtualBox. Yo suelo usar Linux Mint, y en su gestor de paquetes Synaptic podemos encontrar editores avanzados como Geany, o incluso el compilador de C++ de Gnu ("g++") si es que no viene preinstalado en nuestra distribución.

Aquí tienes los detalles: nachocabanes.blogspot.com.es/2013/10/compilar-c-en-linux-con-geany.html

Si prefieres compilar desde Windows (aunque me parece menos razonable), también puedes ver cómo usar CodeLite o Visual C++.

Dentro hablaremos de variables, condiciones y bucles... Si hay dudas, usa los comentarios del blog o acude al foro de C++ de AprendeAProgramar:

http://www.aprendeaprogramar.com/mod/forum/view.php?id=337