Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Obiekt jako argument funkcji.

Ostatnio zmodyfikowano 2013-01-25 12:52
Autor Wiadomość
Gaatt
Temat założony przez niniejszego użytkownika
Obiekt jako argument funkcji.
» 2013-01-24 21:18:57
Witam! Mam problem jak w temacie. Nie umiem przekazać obiektu jako argumentu funkcji. Kod napisałem w wiadomości, mam nadzieję że wiadomo o co chodzi. Nie musi być to dokładnie w takiej formie, można wykorzystać wskaźniki, referencje, polimorfizm. Nie wiem po prostu jak przekazać obiekt do funkcji. To jest tylko przykładowy szablon. Proszę o pomoc. Z góry dziękuję.

main.cpp
C/C++
int main()
{
    Klasa Obiekt;
   
    Funkcja( Obiekt );
   
    return 0;
}
funkcje.cpp
C/C++
void Funkcja( Obiekt )
{
    Obiekt.Funkcja2();
}
funkcje.h
C/C++
class Klasa
{
public:
    void Funkcja2();
}
P-74937
DejaVu
» 2013-01-24 21:25:32
W takim razie zapoznaj się z rozdziałem » Kurs C++ » Poziom 2Funkcje - pierwsze starcie lekcja, a później z » Kurs C++ » Poziom 3Przekazywanie argumentów funkcji przez referencję lekcja.
P-74939
Gaatt
Temat założony przez niniejszego użytkownika
» 2013-01-24 21:42:11
Zapomniałem powiedzieć jeszcze, że nie wiem jak napisać prototyp funkcji.
Z powyższych lików wynika, że to powinno wyglądać tak (chyba):

main.cpp
C/C++
int main()
{
    Klasa Obiekt;
   
    Funkcja( Obiekt );
   
    return 0;
}
funkcje.cpp
C/C++
void Funkcja( Klasa & Obiekt )
{
    Obiekt.Funkcja2();
}
funkcje.h
C/C++
class Klasa
{
public:
    void Funkcja2();
}

void Funkcja( Klasa ); // ??? czy tak to powinno wyglądać?
P-74942
DejaVu
» 2013-01-24 22:36:37
Dobra dedukcja. Jednak mała uwaga: funkcje w klasach nazywa się 'metodami' :)
P-74946
Gaatt
Temat założony przez niniejszego użytkownika
» 2013-01-25 12:52:57
hahah :D , dzięki działa. Próbowałem wcześniej przez 3h co najmniej wszystkie możliwe przypadki z & i *, więc pewnie, któraś z nich była poprawna. Okazało się, że w prototypie funkcji miałem o jeden argument za dużo. Dziękuję za pomoc.
Zamykam temat.
P-74960
« 1 »
  Strona 1 z 1