מהו Constexpr ב-C++?
מהו Constexpr ב-C++?

וִידֵאוֹ: מהו Constexpr ב-C++?

וִידֵאוֹ: מהו Constexpr ב-C++?
וִידֵאוֹ: תכנות מונחה עצמים ושפת C++ | מחלקת friend 2024, נוֹבֶמבֶּר
Anonim

constexpr מציין שניתן להעריך את הערך של אובייקט או פונקציה בזמן הקומפילציה וניתן להשתמש בביטוי בביטויים קבועים אחרים. לדוגמה, להלן הקוד product() מוערך בזמן ההידור. ב-C++ 11, א constexpr הפונקציה צריכה להכיל רק משפט החזרה אחד.

יתרה מכך, למה משמש Constexpr?

ה constexpr specifier מצהיר כי ניתן להעריך את הערך של הפונקציה או המשתנה בזמן הקומפילציה. משתנים ופונקציות כאלה יכולים להיות בשימוש כאשר רק ביטויי קבועי זמן מותרים. א constexpr מפרט בשימוש ב הצהרת חפץ מרמזת על קונסט.

האם Constexpr מוערך? 2 תשובות. constexpr פונקציות יהיו העריך בזמן קומפילציה כאשר כל הארגומנטים שלו הם ביטויים קבועים והתוצאה משמשת גם בביטוי קבוע.

לגבי זה, מתי עלי להשתמש ב-Constexpr?

constexpr מציין שהערך, או ערך ההחזרה, קבוע ובמידת האפשר מחושב בזמן ההידור. א constexpr ניתן להשתמש בערך אינטגרלי בכל מקום שבו נדרש מספר שלם קונסט, כגון ארגומנטים של תבנית והצהרות מערך.

האם פונקציות Constexpr מוטבעות?

אתה יכול להופיע עם פונקציות constexpr הרבה חישובים בזמן הידור. לכן, תוצאת החישוב היא בזמן ריצה כקבוע ב-ROM זמין. בנוסף, פונקציות constexpr הם מרומזים בשורה . התחביר של פונקציות constexpr השתפר באופן מסיבי עם השינוי מ-C++11 ל-C++14.