Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: Capiflash en 19 de Abril de 2008, 05:55:44 PM

Título: Clases y funciones friend en C++
Publicado por: Capiflash en 19 de Abril de 2008, 05:55:44 PM
Tenia entendido que las funciones no miembro de una clase declaradas como friend tenian acceso a la parte privada de la misma , no es asi?

class ConjuntoDeEnteros
{
// Definicion de la estructura de representacion de una lista
// donde almacenar el conjunto de tamaño "ilimitado"
typedef struct nodo
{
  int dato;
    struct nodo *siguiente;
}Nodo;
typedef Nodo *Conjunto;
// Definicion de atributos del objeto;
int tamConjunto;
Conjunto con;
     public:
       ...........
       friend ConjuntoDeEnteros operator *(const ConjuntoDeEnteros A, const ConjuntoDeEnteros B);

Ahora la implementacion en el *.cpp

ConjuntoDeEnteros operator *(const ConjuntoDeEnteros A, const ConjuntoDeEnteros B)
{
Nodo *aux;
ConjuntoDeEnteros C;
aux = A.con;
for(int i=0;i<A.cardinal();i++)
{
if(B.pertenece(aux->dato))
{
C.anade(aux->dato);
}
aux = aux->siguiente;
}
return C;
}


Pues bien , me dice que Nodo y aux no se declararon en este ámbito  :shock:

Estoy algo fuera de juego la verdad , alguno puede decirme por qué es?
Título: Clases y funciones friend en C++
Publicado por: ethernet en 19 de Abril de 2008, 06:17:15 PM
has probado con Class::Type?
Título: Clases y funciones friend en C++
Publicado por: Capiflash en 19 de Abril de 2008, 06:40:59 PM
jur ,asias ethernet estaba cegado a punto de darle un cabezazo a esto xD
Título: Clases y funciones friend en C++
Publicado por: ethernet en 19 de Abril de 2008, 07:01:08 PM
has mirado std::list ?
Título: Clases y funciones friend en C++
Publicado por: Capiflash en 19 de Abril de 2008, 07:35:10 PM
Pues no lo he mirado la verdad

P.D. Estas parco en palabras hoy eh?? xD
Título: Clases y funciones friend en C++
Publicado por: ethernet en 19 de Abril de 2008, 08:16:52 PM
psé :)