Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Niet-type Templateparameters | Templates Usage
C++-Templates
Sectie 2. Hoofdstuk 3
single

single

Niet-type Templateparameters

Veeg om het menu te tonen

Bij het definiëren van een template kunnen we niet alleen types specificeren, maar ook waarden aan die types doorgeven. Dit betekent dat we templates kunnen maken die verschillend gedrag vertonen op basis van de opgegeven waarden, maar hier komen we later op terug.

main.cpp

main.cpp

123456789101112
#include <iostream> // Non-type parameter means we won't use typename // Instead you can use an actual type for it template<int N> void PrintValue() { std::cout << N << std::endl; } int main() { // Call the template function with a literal integer PrintValue<5>(); // 5 }

Het belangrijkste voordeel van deze aanpak is dat alle berekeningen tijdens compile-tijd worden uitgevoerd, wat het gebruik in metaprogrammeren mogelijk maakt.

main.cpp

main.cpp

1234567891011
#include <iostream> // Template function to calculate the square of a non-type parameter I template<int I> int Square() { return I * I; } // Return the square of I int main() { // The result of Square<5>() is computed at compile time int b = Square<5>(); // b will be initialized to 25 }

Wanneer je het gecompileerde programma uitvoert, is de waarde van b al 25. De berekening wordt uitgevoerd tijdens het compileren, wat resulteert in nul bewerkingen tijdens de uitvoering.

question mark

Wat is een belangrijk voordeel van het gebruik van niet-type sjabloonparameters in C++-sjablonen?

Selecteer het correcte antwoord

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 3
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt