Video: SORRY WE ARE BEING IMPERSONATED 2025
Med en matematisk skabelon har du normalt brug for en rigdom af beregninger, men må kun bruge en eller to af disse beregninger ad gangen. For eksempel, hvis nogen beregner dit pant, har han eller hun ikke brug for at kende amortiseringsberegningen. Imidlertid kan personen have brug for afskrivningsberegningen, når han arbejder med den næste kunde.
Kort sagt har beregningerne alle et formål, og du har brug for dem alle, men du behøver dem ikke alle samtidig. På grund af måden du bruger matematiske skabeloner, fungerer de bedst som en række funktionsskabeloner. MathTemplate-eksemplet viser, hvordan man opretter række af funktioner.
#include # include using namespace std; skabelon T område (T højde, T længde) {retur højde * længde;} const dobbelt PI = 4. 0 * atan (1, 0); skabelon T CircleArea (T radius) {dobbelt resultat; resultat = PI * radius * radius; // Denne version afkorter værdien. retur (T) resultat;} skabelon T TriangleArea (T base, T højde) {dobbelt resultat; resultat = base * højde * 0. 5; returnere (T) resultat;} int main () {cout << "4 x 4 Områder:" << endl; cout << "square:" << område (4, 4) << endl; cout << "cirkel:" << circleArea (2) << endl; cout << "trekant:" << triangleArea (4, 4) << endl; cout << "ved hjælp af en værdi af pi af:" << pI << endl; returner 0;}
Beregningerne kan bestå af en hvilken som helst matematisk beregning - eksemplet er, at ved hjælp af funktioner gør hver af beregningerne diskret, nem at bruge og nem at håndtere. Når du kører dette eksempel, ser du følgende output:
4 X 4 Områder: Firkant: 16 Cirkel: 12 Trekant: 8 Brug en pi-værdi på: 3. 14159
Bemærk at CircleArea (2) bruger halvdelen af værdien af de andre beregninger som input. Det skyldes, at du beregner området for en cirkel ved hjælp af ligningen pi x r 2 .
For konsistens kan du ændre cirkelligningen til at læse sådan:
radius = radius / 2; resultat = PI * radius * radius;
Deling af indgangen med 2, der væsentligt ændrer diameteren til en radius, betyder, at du kan kalde ligningen med samme nummer som alle andre områdeberegninger: CircleArea (4). Uanset hvilken tilgang du vælger, skal du dokumentere, hvordan skabelonen fungerer, så andre udviklere ved, hvordan man bruger den.
Du skal også bemærke, at cirkel- og trekantberegningerne udfører en smule type tvang for at sikre, at brugeren får de forventede resultater tilbage ved at ændre returopgørelsen for at læse returresultatet (T);. Typekonverteringerne er nødvendige for at holde dine skabeloner fra at generere advarselsmeddelelser.Det er vigtigt at bemærke, at den tilgang, der anvendes i eksemplet, afkortes resultatet, når skabelonen returnerer en int.