Creare Videogiochi - Game Developer
funzione friend - Versione stampabile

+- Creare Videogiochi - Game Developer (https://www.making-videogames.net/giochi)
+-- Forum: Programmazione (https://www.making-videogames.net/giochi/Forum-Programmazione)
+--- Forum: Programmazione in C C++ e C# (https://www.making-videogames.net/giochi/Forum-Programmazione-in-C-C-e-C)
+--- Discussione: funzione friend (/thread-funzione-friend)



funzione friend - pofro89 - 21-02-2012

Codice:
#include <iostream>
using namespace std;

class myclass
{
    int a, b;
   public:
    void set(int i, int j);
    friend int prodotto(myclass asd);
} ;
void myclass::set(int i, int j)
{
    a = i;
    b = j;
}
int prodotto (myclass asd)
{
    return (a*b);
}
main()
{
    myclass A;
    A.set(5,3);
    cout<<prodotto(A); //il risultato è 15
}

Questo è il codice che sto usando per provare ma non funziona.
L'ho sistemato n questa maniera:

Codice:
#include <iostream>
using namespace std;

class myclass
{
    int a, b;
   public:
    void set(int i, int j);
    friend int prodotto(myclass asd);
} ;
void myclass::set(int i, int j)
{
    a = i;
    b = j;
}
int prodotto (myclass asd)
{
    return (asd.a*asd.b);
}
main()
{
    myclass A;
    A.set(5,3);
    cout<<prodotto(A); //il risultato è 15
}

Ma sinceramente non mi piace molto.
Non c'è un modo per far funzionare il primo codice, magari aggiungendo qualcosa?


RE: funzione friend - Zapetino - 21-02-2012

cosa devi fare di preciso ?


RE: funzione friend - pofro89 - 22-02-2012

In pratica vorrei che questa funzione funzionasse scritta così:

int prodotto (myclass asd)
{
return (a*b);
}

e non così:

int prodotto (myclass asd)
{
return (asd.a*asd.b);
}


RE: funzione friend - David - 23-02-2012

si ma a quale fine?


RE: funzione friend - pofro89 - 23-02-2012

Il professore me l'ha chiesta così XD