14. september 2005 - 11:06Der er
3 kommentarer og 1 løsning
Global klasse
Hej Eksperter :P
Er igang med et c++ projekt, hvor vi har flere forme ... Samt nogle klasser ...
Men, Alle mine forme skal kunne få dataerne fra klassen, og alle forme skal kunne hente data fra de forskellige forme ... :) Altså, alt skal være tilgængeligt over det hele ...
Eks. Min fil som indeholder klassen hedder usrClass.cpp Har følgende 2 forme:
cppMain.h cppMain.cpp cppLogin.h cppLogin.cpp
Hvilke filer skal inkluderes hvor? eller hvordan gør jeg så jeg kan hente data fra de forskellige forme og klasser i alle forme? :)
hvis hver .cpp fil inkluderer alle .h filer så kender al kode alle klasser
og static metoder kan derfor bare uden videre kaldes
ikke static metoder kræver imidlertid en instans af klasserne og det kan godt være mere kompliceret at få det - men ud fra ovenstående korte beskrivelse er det svært at gå mere i detaljer
Nu har jeg inkluderet alle h filer i alle cpp filer :) Men, hvis jeg så i min cppMain.cpp opretter min klasse.. Bruger curUser; (Min klasse hedder Bruger) hvordan kan jeg så bruge den fra cppLogin.cpp? :)
Lad os lige få begreberne på plads. class X { }; X x; X *px; Her er X en class og x et object af typen X.
Hvis du i A.h definerer en class A og i A.cpp laver en instans af denne class kaldet a og du ønsker at tilgå dette object i b.cpp skal du have en extern erklæring af objectet a i A.h: extern A a;
I a.cpp skal du stadig have en A a;
Og b.cpp skal inkludere a.h
Dette forudsætter at du kun har et object af typen a (som skal kunne tilgåes af andre end a.cpp).
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.