JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=7b1a5faeb6df04cae3f2f29fc27b6387Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Inline Funktionen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Leax
Mini JLI'ler



Anmeldedatum: 15.07.2003
Beiträge: 43

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 16:13    Titel: Inline Funktionen Antworten mit Zitat

Kann man so eine Inline Funktion so oft man will benutzen, oder nur einmal?

Und was ist überhaupt gegenüber einer normalen Funktion anders?
Was ist der Vorteil gegenüber eines Präprozessormakros?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 16:28    Titel: Antworten mit Zitat

Bei einer inline-Funktion wird kein echter Funktionsaufruf getätigt, sondern der Code der Funktion wird kopiert. Dadurch gewinnst du zwar an Geschwindigkeit, aber dein Code wird größer.

Zitat:

Was ist der Vorteil gegenüber eines Präprozessormakros?


Typensicherheit.
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 16:43    Titel: Antworten mit Zitat

Ja, man kann sie so oft benutzen wie man will.

ABER, der Compiler entscheidet darüber, ob er den Funktionsaufruf durch den Funktionscode ersetzt, oder es bei einem Funktionsaufruf belässt. Du machst lediglich einen Optimierungsvorschlag, welcher aber vom Compiler auch ignoriert werden kann.
Im Gegensatz zu den Makros, wo der Makroaufruf in jedem Fall durch den Code ersetzt wird.

Zitat:
Und was ist überhaupt gegenüber einer normalen Funktion anders?

Nichts! Das ist wie oben gesagt nur ein Vorschlag für den Compiler, wenn dieser ans Optimieren geht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Leax
Mini JLI'ler



Anmeldedatum: 15.07.2003
Beiträge: 43

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 16:57    Titel: Antworten mit Zitat

ok, danke an euch beide!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nEp
Junior JLI'ler



Anmeldedatum: 03.06.2003
Beiträge: 75

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 18:59    Titel: Antworten mit Zitat

Ja dadurch ist eine inline "Funktion" im Gegensatz zu "normalen" Funktionen auch schneller.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
abc_d
JLI Master Trainee


Alter: 34
Anmeldedatum: 27.01.2003
Beiträge: 615

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 21:23    Titel: Antworten mit Zitat

Meines Wissens verwendet Visual C++ inline aber nicht, oder irre ich mich da?
_________________
http://mitglied.lycos.de/sarti/linuxisevil.gif Linux is evil - get the fact.

Never touch a running System - der Systemling
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 21:25    Titel: Antworten mit Zitat

Doch, Inline schon (soweit ich weiss) aber register wird nicht berücksichtigt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
abc_d
JLI Master Trainee


Alter: 34
Anmeldedatum: 27.01.2003
Beiträge: 615

Medaillen: Keine

BeitragVerfasst am: 15.07.2003, 21:31    Titel: Antworten mit Zitat

ICh hab gerade nachgeschaut, es wird doch unterstützt. Ich habe es mit Register verwechselt Wink
_________________
http://mitglied.lycos.de/sarti/linuxisevil.gif Linux is evil - get the fact.

Never touch a running System - der Systemling
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum