Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Zufallsfunktion..

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] [ 2 ] [ 3 ] > 4 < [ 5 ] [ 6 ]
030
24.03.2004, 14:23 Uhr
Fraenky



hier die Fehlermeldung..hab nur das #include "CKlasse.cpp" in "CKlasse.h" umbenannt:

Error: Unresolved external 'CWurfel::ermittleZahl()' referenced from DEIGENE D
ATEIEN\FRANK\CODING\C++\WURFEL\WURFEL.OBJ
Error: Unresolved external 'CWurfel::zeichneWurfel()' referenced from DEIGENE
DATEIEN\FRANK\CODING\C++\WURFEL\WURFEL.OBJ


Dann habe ich noch eine Frage zu der Zufallsfunktion:
wie kann ich denn srand(time(NULL)); genauer machen? im Faq stand irgendetwas von gettimeofday..oder so?? Ich möchte die rand() Funktion nämlich mehrmal pro Sekunde aufrufen aber da kommt ja dann immer das gleiche raus..

thx

MfG
Fraenky
--
Welcome to the real World.

www.fraenkysweb.de

Dieser Post wurde am 24.03.2004 um 14:25 Uhr von Fraenky editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
031
24.03.2004, 15:55 Uhr
typecast
aka loddab
(Operator)


Die Fehlermeldungen deuten darauf hin, dass du die beiden Methoden in deiner .cpp Datei nicht implementiert hast. Schau mal ob du das vielleicht vergessen hast.

Was virtual mit gettimeofday() in der FAQ meint, kann ich nicht ganz nachvollziehen. Das brauchst du, wie auch in der FAQ beschrieben, nur dann, wenn deine Funktion mehrmals in der sekunde aufgerufen wird. Ist das der Fall?

Der einzige Fall wo ich mir vorstellen könnte wenn das Sinn macht, ist wenn man mit Threads arbeitet. Das ist dann allerdings schon nicht mehr ANSI. Dann kannst du sowieso OS-Spezifische Funktionen nehmen. Aber das ist ein anderes Thema :-)

Also für den normalen Gebrauch sollte srand(time(NULL)); auf jedenfall reichen.
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)

Dieser Post wurde am 24.03.2004 um 15:56 Uhr von loddab editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
032
24.03.2004, 16:05 Uhr
Fraenky



ja ich möchte die Funktion mehrmals pro Sekunde aufrufen und damit 3 Karten Symbole generieren. Demnach müssten aber die Symvole dann alle gleih sein und das -ist ja klar- will ich nicht...sollen halt unterschiedliche Symbole pro Karte sein. Die Funktion liegt inner Klasse.., dh wenn ich zb

Karte1.setzeSymbol();
Karte2.setzeSymbol(),

mache, werden die doch gleich..

zu dem anderen Problem:
welche Methoden (Funktionen/Variablen oder?) in welcher *.cpp Datei?? ich habe die Prototypen alle definiert und dann in der CKlasse.cpp implementiert (also genau gesagt was die machen sollen..oder?) Ich hab nochma geguckt und ich habe keine vergessen..

thx

MfG
Fraenky
--
Welcome to the real World.

www.fraenkysweb.de
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
033
24.03.2004, 16:08 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ich vermute mal eher das deine fehlermeldung daher rührt das du die betreffende datei nicht deinem projekt hinzugefügt hast...
womit bestelst du das dann? du musst dafür sorgen das von deiner Karte.cpp eine objectdatei erstellt wird sonst kann der compiler das nicht linken...
wenn du z.b. visual studio hast macht der das von alleine wenn du die entsprechende cpp-datei deinem projekt hinzufügst. der compilert dann vorher einfach alles durch was zum projekt gehört...
wenn du z.b. den gcc nutzt reicht es nicht aus ihm einfach zu sagen er soll deine test.cpp kompilieren wenn du in dieser noch einen header includiert hast zu der es eine cpp datei gibt...

vermute mal das das dein problem ist, du verwendest den compiler falsch
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
034
24.03.2004, 16:13 Uhr
typecast
aka loddab
(Operator)


Dann ändere die Funktion ab:
Rufe die Funktion einmal auf und lasse sie x Zufallszahlen berechnen. Das ist der normal Weg dieses Problem zu lösen.
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
035
24.03.2004, 16:25 Uhr
Fraenky



also ich habe den Borland Compiler und mein Editor ist UltraEdit ich kompiliere via Makefile, also noch auf Dos Ebene..

muss ich denn das Makefile noch anpassen??

Bearbeitung:
ja habe nachgeguckt und dann doch was übersehen...


@loddab:
ähm..*zugeb* ...das hab ich jetzt nicht verstanden..
--
Welcome to the real World.

www.fraenkysweb.de

Dieser Post wurde am 24.03.2004 um 16:27 Uhr von Fraenky editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
036
24.03.2004, 16:27 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@freanky
ich hab loddab auch nicht verstanden...

makefile musst du anpassen frag mich aber nicht wie... Ich hab das nette visual studio da muss ich mich nicht mit makefiles rumärgern...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
037
24.03.2004, 16:29 Uhr
Fraenky



ähm hab da noch ne Frage:
Wie kann ich Funktionen anderer Klassen in einer Klasse verwenden??

zB in einer Würfel Klasse die Funktioen name() vom der Klasse Mench aufrufen??

THX!
--
Welcome to the real World.

www.fraenkysweb.de
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
038
24.03.2004, 16:35 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


theoretisch erstmal gar nicht...
die methoden gehören erstmal den objekten einer klassen (so du sie nich static definierst) das heisst du musst eine konkrete instanz einer klasse erstellt haben damit du auch die mehtoden dieser klasse auf das jeweilige object anwenden kannst....

was genau willst du denn machen?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
039
24.03.2004, 16:41 Uhr
typecast
aka loddab
(Operator)


Hmm....
Für mich macht das schon Sinn......
Muss ich mir Sorgen um meine psychische Gesundheit machen????

Aber egal. Ich versuche es nochmal. Irgendwann müsst ihr es ja verstehen

Rufe die Funktion 1 mal auf und lass dir von ihr wärend diesem Aufruf gleich alle 3 Werte ausgeben. Du kannst der Funktion den Parameter x mitgeben, damit sie weiß, wieviele Werte sie berechnen soll (falls du mal mehr als drei benötigst).

Zum Post 037:

C++:
void cWürfel::irgend_eine_funktion()
{
   Mensch bla;
   Mensch *ein_anderer = new Mensch();
   bla.name();
   ein_anderer->name()
}



Narülich muss die Mehtode name() in Mensch als public deklariert sein
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] [ 3 ] > 4 < [ 5 ] [ 6 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: