[qt3] compile errors

Pagina: 1
Acties:

  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 15-04 07:15
Ik heb wat problemen met qt3 icm mijn proggie. Mijn geschreven programma wil ik dat het hoofdwindows een subwindow kent en andersom. Ik heb dus in de hoofd de subwindow geinclude en andersom.

Nu krijg ik een fout:
In file included from .ui/hoofdwindow.h:25,
from main.cpp:2:
.ui/subwindow.h:49: error: syntax error before `*' token
Omdat ik die file zelf niet te zien kan krijgen (subwindow.h). Dacht ik de make file aan te passen ->
het orgineel (deel van)
mocclean:
-$(DEL_FILE) $(OBJMOC)
-$(DEL_FILE) $(SRCMOC)

uiclean:
-$(DEL_FILE) $(UICIMPLS) $(UICDECLS)

yaccclean:
lexclean:
clean: mocclean uiclean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) .ui/qmake_image_collection.cpp
-$(DEL_FILE) *~ core *.core
clean (de inhoud) het ik overal # voorgezet zodat deze niet gedaan wordt. Maar nog worden de files telkens verwijderd...

Als ik in subwindow, hoofdwindow niet in declaratie include maar in implementatie doet ie het wel, maar ik heb ook een instance variabele die naar hoofdwindow moet wijzen dus moet de include in declaratie staan.

Hoe kan ik zorgen dat ik subwindow.h kan inzien of wat kan deze fout veroorzaken.

if broken it is, fix it you should


  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 09-04 22:08
elgringo schreef op vrijdag 06 januari 2006 @ 15:54:
Als ik in subwindow, hoofdwindow niet in declaratie include maar in implementatie doet ie het wel, maar ik heb ook een instance variabele die naar hoofdwindow moet wijzen dus moet de include in declaratie staan.
Nee, dat moet niet. Je kunt toe met een forward declaration, omdat de "instance variabele" een reference is (of zou moeten zijn).

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 15-04 07:15
MSalters schreef op vrijdag 06 januari 2006 @ 21:06:
[...]

Nee, dat moet niet. Je kunt toe met een forward declaration, omdat de "instance variabele" een reference is (of zou moeten zijn).
Wat hoe zo'n foward declaration in? Ik ken de term wel, zal hem ook vast gebruikt hebben, kan hem alleen niet koppelen aan C++ code.

if broken it is, fix it you should


  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 15-04 07:15
Ik heb hem in qt bij fowarde declaration gezet maar dat maakt weinig uit.
ik heb hier dus HoofdWindow *pHoofdWindow; staan

if broken it is, fix it you should


  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 15-04 07:15
Schop

if broken it is, fix it you should


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 22:02

Creepy

Tactical Espionage Splatterer

Bij QT?? Daar moet je natuurlijk gewoon van afblijven.
Je zult je forward declaration van Hoofdwindow in de sourcefile van subwindow moeten zetten (en andersom).

Mocht het nou nog niet lukken, kan je dan precies aangeven wat waar is gedeclareerd en waar je nu de forward declaration(s) hebt staan?

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 15-04 07:15
Creepy schreef op donderdag 12 januari 2006 @ 11:37:
Bij QT?? Daar moet je natuurlijk gewoon van afblijven.
Je zult je forward declaration van Hoofdwindow in de sourcefile van subwindow moeten zetten (en andersom).

Mocht het nou nog niet lukken, kan je dan precies aangeven wat waar is gedeclareerd en waar je nu de forward declaration(s) hebt staan?
ik heb in SubWindow class HoofdWindow gezet.
Nu loop ik tegen het problem aan dat deze forward declaratie geen methodes kent. Ik kan niet vanuit mijn code methodes aanroepen....
ondanks het feit dat ik de header include in de cpp file....

[ Voor 23% gewijzigd door elgringo op 17-01-2006 12:53 ]

if broken it is, fix it you should

Pagina: 1