compiler synthesized functions



  • Stimmt es, dass vom Compiler generierte Funktionen, z.B. ein default Ctor immer inline sind?



  • Der Compiler entscheidet, was geinlined wir, nicht der C++ Standard.



  • blubbbbbbb schrieb:

    Der Compiler entscheidet, was geinlined wir, nicht der C++ Standard.

    Der OP hat nicht gefragt, ob sie immer "geinlined" werden, sondern ob sie inline sind. Dazwischen existiert ein feiner aber sehr wichtiger Unterschied.

    @Raptor
    Jup. So definiert der Standard es (12.1, 12.4, 12.8). D.h. eine vom Compiler erstellte Default-Funktion ist inlinem, besitzt damit die ODR-Eigenschaften von inline-Funktionen und kann somit z.B. einmal pro Übersetzungseinheit generiert werden.


Anmelden zum Antworten