Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Anonymous

unregistriert

1

19.09.2005, 16:58

Aufbau der TriBase Header

moin ich hab mer mal die header datei der tbVector3.h angeschaut, und hab irgendwie nichts so richtig verstanden... wieso darf man die klassen methoden z.B. "inline float tbVector3Length(const tbVector3& v)"
einfach ohne instanz benutzen ??? essind ja keine statik methoden, und weshalb sind keine Prototypen in der klasse?? und weshalb sind nicht alle operatoren innerhalb deklariert??? ich hab ne kurze idee weiss aber nich ob ews stimmt, sie lautet folgendermassen:
die klasse dient nur als konstruktor, also sind die methoden gar keine methoden sondern funktionen, die bloss halt objekte enthalten, die mit der klasse erstellt wurden...
bitte bestätigt mich wenn das richtig is wenn nich erklärts mir bitte noch mal... :)
thx

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

2

19.09.2005, 17:46

Hmmm ganz ehrlich(bin gerade aufgestanden und daher garantiert sehr mofelig), sowas zu erkären ist Sinn eines C++ Buches und weniger aufgabe einer Support Comun ;) :huhu:

P.S: VectorLenght ist außerhlab von der Klasssen Def und daher keine Methode und die Operatoren sind alle Innerhalb der Klassen Def!
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

3

19.09.2005, 20:51

Alle "Funktionen" einer Klasse sind dessen Methoden. Die Klasse wird in der OOP auch oft als Objekt bezeichnet.

Dave

Alter Hase

Beiträge: 757

Wohnort: Berlin

  • Private Nachricht senden

4

19.09.2005, 21:48

mit objekt ist aber eigentlich nur ein ganz spezielles exemplar (oder auch instanz) einer klasse gemeint...

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

5

19.09.2005, 22:36

ja einfach mal mit OOP beschäftigen und die speziellen Wörter die hier benötigt bzw. verwendet werden lernen.

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

6

20.09.2005, 01:34

hmm mir kommts so vor als redet ihr alle am Thema vorbei ;)

Die Funktion tbVector3Length hat nichts mit der Klasse tbVector3 zu tun, da sie außerhalb der Klasse definiert wird. Das erkennst du daran, dass die Klasse mit class { anfängt und mit }; endet. Dann erst wird die Funktion deklariert, und sie erwartet einfach nur eine Variable vom Typ tbVector3, mit der sie dann arbeitet. Also einfach nur eine ganz normale Funktion, die aber in der gleichen Datei existiert weil sie nur mit der Klasse arbeitet.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

7

20.09.2005, 12:01

So Spik jetzt lernen wir mal lesen ;).

Zitat von »"Nox"«

... P.S: VectorLenght ist außerhalb von der Klasssen Def und daher keine Methode...
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

8

20.09.2005, 17:25

achja sry aber das kommt wenn man übermüdet irgendwelche Beiträge liest -.- aber die andern haben sich ja nicht darauf bezogen :rolleyes:

Anonymous

unregistriert

9

20.09.2005, 17:45

Ja danke spik evil du hast den punkt getroffen ;)
aber zuweisungs und vergleichs operatoren sind ausserhalb der klasse defieniert ohne dies zu sagen... seht euch mal die header mit dem notepad an :)
PS:Ddanke für die erklärungen was ne klasse ist, aber das wusst ich auch schon vorher lol :)

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

10

20.09.2005, 19:05

Was Du da behauptest trifft zumindest nicht für die Tribase der ersten Auflage zu und es kann auch schlecht sein, dass es außerhalb ist.
Was viell zu deinen Denkfehler führt: Da ist eine union drin, die vor den konstruktoren auch mit }; abgeschlossen wird.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Werbeanzeige