demnim escribió:Vereis estoy mirandome algo de esto y tengo un pequeño problema
cuando declaro una clase pej
class pepe{
.... kilos de morralla
};
y ahora hago otra clase pero quiero que uno de sus atributos sea
un array de la clase pepe
clase paco{
public:
pepe arraydeloscojones[];
};
pero el compilador me explota.
a ver si podeis ayudarme
Lo primero que deberias de hacer es ver ejemplos a troquimoche de como se hace y leerte un buen manual como por ejemplo este:
http://es.tldp.org/Manuales-LuCAS/doc-tutorial-c++/doc-tutorial-c++.pdf
Respecto a lo que preguntas:
A la hora de programar con clases necesitas 2 archivos, uno de librerias (con extension .h) y otro con el codigo en c++ (.cc o .cpp).
En el .h necesitas poner la declaracion de la clase (como minimo su forma canónica, la cual es la siguiente):
(PARA EL .h)
[size=100]
class ejemplo1{
public:
ejemplo1(); //constructor
~ejemplo1(); //destructor
ejemplo1(const ejemplo1&); //constructor de copia
ejemplo1& operator=(const ejemplo1&) //sobrecarga del op.
asignación
private:
int numero;
};
[/size]
luego, si quieres hacer métodos varios devolviendo un dato de otra clase ya hecha pues nada más sencillo que hacer lo siguiente:
[size=100]
class ejemplo1{
public:
ejemplo1(); //constructor
~ejemplo1(); //destructor
ejemplo1(const ejemplo1&); //constructor de copia
ejemplo1& operator=(const ejemplo1&) //sobrecarga del op.
asignación
private:
int numero;
};
class ejemplo2{
public:
ejemplo2();
~ejemplo2();
ejemplo2(const ejemplo2&);
ejemplo2& operator=(const ejemplo2&);
[b]ejemplo1 NombreMetodo(tipo1, tipo2, tipo_n...);[/b]
private:
int numero;
};
[/size]
En el .cpp tendrás que rellenar con el código C++ todo lo declarado en el .h
De todos modos te recomiendo de nuevo que te vuelvas a mirar ese manual (el cual te puedo asegurar que esta bastante bien)
http://es.tldp.org/Manuales-LuCAS/doc-tutorial-c++/doc-tutorial-c++.pdf