Frage zu einer Zeile ;-)
-
Hallo!
Ich hätte mal ne Frage zur "C++ Syntax":
also, ich habe folgende Zeile (K-Develop 3.irgendwas..):
KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
Wo ist das Object? Wieso kann man hier so auf die Klassenfunktion zugreifen?
Setzt der Linker da ein Object ein? Vom Betriebsystem oder so?Ich verstehe die Zeile nicht so ganz..
Am hilfreichsten wäre ich für nen kleines Skript mit einer Klasse, die so aufgerufen werden kann, falls diese Linkertheorie falsch ist ;-)?
Schöne Grüße, Jan
-
Schau dir doch mal den Header von KCmdLineArgs an.
Im Normalfall ist parsedArgs eine statische Funktion der Klasse KCmdLineArgs.
-
Danke!
Du hast recht! hätte ich mir auch mal vorher angucken können..
-
Die Funktion gibt dann nen Zeiger auf die Klasse zurück.
Ich denke mal, dass die Funktion dann mit new n echtes Objekt erstellt..Ein Zugriff args->irgendwas (also passiert 2 zeilen später)
kann immer nur stattfinden, wenn es das Object wirklich gibt, richtig?
-
Ja... Bei args muss es sich um ein gültiges Objekt handeln. Sonst bekämst du ja einen Speicherzugriffsfehler.