[Kde-devel-es] Una curiosidad...

Listas kde-devel-es@mail.kde.org
26 Feb 2003 10:48:23 +0100


On Tue, 2003-02-25 at 17:55, Jaime Robles wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Buenas tardes...
> ¿Qué librería hace falta importar para poder hacer "cout << "hola mundo" << 
> endl; " ¿no es el stdio? (esa es para c...)
> 
> Lo digo porque de ayer a hoy no me funciona eso.. :-? y si me funciona el 
> printf.... :-?
> 
> ¿Que qué he hecho entre ayer y hoy?? Pues apt-get upgrade :-)

Tu problema ha sido el nuevo cambio en la documentacion de la libstdc++ , que ahora esta 
en version 5 y el espacio de nombres ha sido tocado...

Lo que exige que modifiquemos nuestros programas...

Puedes probar lo siguiente...

Modifica tus :

#include <iostream.h>

por

#include <iostream>


Para solucionar lo de los couts y endl puedes hacer dos cosas :

1º especificar espacio de nombres

std::cout << "Hola mundo "<< std::endl;

2ª especificar espacio de nombres

en lo alto de cada fichero (despues de los includes :) ) pones algo asi como:

namespace std{}
using namespace std;

y a partir de ese momento

cout << "Hola mundo "<< endl;


lo que mas te guste, menos te cueste, y menos problemas te pueda dar con otros 
espacios de nombre en el futuro....

Por cieto ya que estamos... otra posiblidad para que se pueda compilar en todos sitios
es chequear el compilador e incluir <iostream> y namespace en el caso de que el compilador
este por encima de 3.2.



Un Saludo Carlos Manzanedo (que tambien esta pasando sus programas a la nueva biblioteca).
----------------
BlueSock Linux.