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

Nagamono

Frischling

  • »Nagamono« ist der Autor dieses Themas

Beiträge: 32

Wohnort: Düsseldorf

Beruf: Schüler

  • Private Nachricht senden

1

18.11.2010, 19:03

Inline-Funktionen?

Ich habe eine Frage zu inline-Funktionen.
Soweit ich das in dem Buch richtig verstanden habe, lohnt es sich nur relativ kurze Funktion als inline zu deklarieren?
Funktionen die wiederum etwas länger sind dementsprechend NICHT als inline?
Hoffe ihr könnt mir sagen ob ich das so richtig verstanden habe :D

CBenni::O

1x Contest-Sieger

Beiträge: 1 145

Wohnort: Stuttgart

  • Private Nachricht senden

2

18.11.2010, 19:08

Ja.

Aufrufe von Inline-funktionen werden beim kompilieren - einfach gesagt - durch die Funktion selbst ersetzt. Das hat den vorteil, dann es viel schneller sein kann, und bei sehr kleinen funktionen auch kleiner. Aber wenn du nun eine 250-Zeilen-funktion hast, und die an 10 verschiedenen stellen aufrufst, dann vergrößert sich die größe der .exe gewaltig. Und der geschwindigkeitsvorteil ist in diesem fall vernachlässigbar klein.

mfg CBenni::O
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
42!
Aufräumen kann jeder, nur das Genie überblickt das Chaos!
Metal will never die!
1. Sppro Gamecontest - mein Beitrag

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

3

18.11.2010, 19:14

Der Geschwindigkeitsvorteil ist sowieso vernachlässigbar.

inline sollte man eigentlich gar nicht mehr benutzen (mal abgesehen von Linker Spielereien). Erstens kann der Compiler das besser einschätzen, ob eine Funktion geinlined werden soll oder nicht (er entscheidet sowieso schlussendlich), und zweitens wird der Overhead von Funktionsaufrufen mit x64 sowieso langsam aber sicher nicht mehr existent.

@Nagamono:
Faustregel: Benutz kein inline. Es ist grundsätzlich nicht böse, aber auch nicht nützlich.

Nagamono

Frischling

  • »Nagamono« ist der Autor dieses Themas

Beiträge: 32

Wohnort: Düsseldorf

Beruf: Schüler

  • Private Nachricht senden

4

18.11.2010, 19:15

Vielen Dank :)
Ich bin ja erst seit kurzem in diesem Forum bzw. in der Programmierung unterwegs aber ich find es echt Klasse.
Hier sind viele Leute aktiv und es ist ein sehr netter und freundlich Umgang :D

CBenni::O

1x Contest-Sieger

Beiträge: 1 145

Wohnort: Stuttgart

  • Private Nachricht senden

5

18.11.2010, 19:23

drakon hat recht; es macht nur sehr selten tatsächlich sinn, inlines zu verwenden; und wenn, dann solltest du dich der Konsequenzen bewusst sein.

mfg CBenni::O
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
42!
Aufräumen kann jeder, nur das Genie überblickt das Chaos!
Metal will never die!
1. Sppro Gamecontest - mein Beitrag

6

18.11.2010, 20:04


Ich bin ja erst seit kurzem in diesem Forum bzw. in der Programmierung unterwegs aber ich find es echt Klasse.
Hier sind viele Leute aktiv und es ist ein sehr netter und freundlich Umgang :D

*woooord* :thumbsup:

Werbeanzeige