C++ da Constexpr nima?
C++ da Constexpr nima?

Video: C++ da Constexpr nima?

Video: C++ da Constexpr nima?
Video: C++ From Scratch: Constexpr 2024, May
Anonim

constexpr ob'ekt yoki funksiya qiymati kompilyatsiya vaqtida baholanishi va ifoda boshqa doimiy ifodalarda ishlatilishi mumkinligini bildiradi. Misol uchun, quyidagi kodda product() kompilyatsiya vaqtida baholanadi. C++ da 11, a constexpr funktsiya faqat bitta qaytish bayonotini o'z ichiga olishi kerak.

Bundan tashqari, Constexpr nima uchun ishlatiladi?

The constexpr specifier kompilyatsiya vaqtida funksiya yoki o'zgaruvchining qiymatini baholash mumkinligini e'lon qiladi. Bunday o'zgaruvchilar va funktsiyalar keyin bo'lishi mumkin ishlatilgan bu erda faqat kompilyatsiya vaqtining doimiy ifodalariga ruxsat beriladi. A constexpr aniqlovchi da ishlatilgan ob'ekt deklaratsiyasi constni bildiradi.

Constexpr baholanadimi? 2 ta javob. constexpr funktsiyalari bo'ladi baholangan kompilyatsiya vaqtida uning barcha argumentlari doimiy iboralar bo'lganda va natija doimiy ifodada ham qo'llaniladi.

Bu borada Constexpr dan qachon foydalanishim kerak?

constexpr qiymat yoki qaytariladigan qiymat doimiy ekanligini va iloji bo'lsa, kompilyatsiya vaqtida hisoblanishini ko'rsatadi. A constexpr integral qiymatdan const tamsayı kerak bo'lganda foydalanish mumkin, masalan, shablon argumentlari va massiv deklaratsiyasida.

Constexpr funktsiyalari inlinemi?

bilan ijro etishingiz mumkin constexpr funktsiyalari kompilyatsiya vaqtida juda ko'p hisob-kitoblar. Shuning uchun, hisoblash natijasi mavjud ROMda doimiy sifatida ish vaqtida bo'ladi. Bunga qo'chimcha, constexpr funktsiyalari yashirindir mos ravishda . ning sintaksisi constexpr funktsiyalari C++ 11 dan C++ 14 ga o'zgarishi bilan sezilarli darajada yaxshilandi.