Junior — Middle
Je povinné, aby sa kód vložil do miesta volania inline funkcie počas kompilácie?
sobes.tech AI
Odpoveď od AI
Nie, prekladač nie je povinný vkladať kód inline funkcií priamo na miesto volania. Kľúčové slovo inline v C/C++ je iba odporúčanie pre prekladač, nie prísna požiadavka. Prekladač môže túto odporúčanie ignorovať, ak usúdi, že vloženie kódu zvýši veľkosť binárky alebo zhorší výkon. Okrem toho, funkcie deklarované ako inline musia mať definíciu v hlavičkovom súbore, aby ich prekladač mohol vidieť počas kompilácie, ale skutočné vloženie závisí od optimalizátora.