[qt/c++] multiplied definition

0

Witam mój program składa się z takich oto plików:
wielomian.h
wielomian.cpp
imagewidgets.h
imagewidgets.cpp
main.cpp
program.pro
Nagłówek "wielomian.h" nie jest dołączony do projektu "program.pro" jak wszystko bo musiałem go użyć też w pliku "imagewidgets.cpp" ( oprócz użycia w "wielomian.cpp" ). Teraz pojawił mi się kolejny problem bo chciałem stworzyć funkcje która jako parametry przyjmuje jeden obiekt z "wielomian.h" a drugi z "imagewidgets.h". Funkcja ta jak każda inna powinna mieć swoją deklaracje w pliku nagłówkowym tylko którym i jak to zrobić? Dodam że funkcja ta powinna być w klasie imagewidgets jako że korzysta z jej zmiennych prywatnych. Nie mam już żadnych pomysłów jak to zrobić więc zwracam się do was.

0

Wydaję mi się, że za wcześnie zaczynasz przygodę z Qt, nie masz podstaw programowania obiektowego, nie potrafisz zorganizować sobie kodu. Co do twojego problemu... skoro twierdzisz, ze funkcja musi znajdować się w klasie to ją tam umieść. Pewnie masz problem, który polega na tym jak przekazać do tej funkcji obiekt drugiej klasy z drugiego pliku? Dołącz ten plik do headera z klasą i będzie śmigać ( ewentualnie poinformuj kompilator, że tamta klasa z drugiego nagłówka w ogóle istnieje przez dodanie "class NazwaKlasy;" przed definiowaniem klasy z ta funkcją, to wszystko. Możesz też zrobić osobną zaprzyjaźnioną klasę... rozwiązań jest dużo i sam byś do nich doszedł gdybyś nie rzucał się na za głęboką wodę.

Mam nadzieję, że dobrze zrozumiałem twój problem.

pozdrawiam

0

Oczywiście dobrze mnie zrozumiałeś. to nie jest do końca taka głęboka woda tylko troche czasu mineło od kiedy uczyłem się teori programowania obiektowego no i pare rzeczy uleciało mi z bańki. rozwiązanie które podyktowałeś to właśnie to którego mi brakowało ale zapomniałem o nim;] ( mowie o tym class nazwaklasy; )

1 użytkowników online, w tym zalogowanych: 0, gości: 1