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.