Konstante Funktionsargumenter
Stryg for at vise menuen
Konstante argumenter i en funktion angiver, at de værdier, der sendes til funktionen som parametre, ikke kan ændres inde i funktionen.
Overførsel af const-argumenter som værdi
Når en parameter overføres som værdi og erklæres som const, laves der en kopi af værdien, og funktionen kan ikke ændre denne kopi.
For at erklære det konstante argument skal du bruge nøgleordet const før typespecifikationen af argumentet i funktionssignaturen. Nøgleordet const fungerer som en afklaring, der viser, at funktionen ikke ændrer den overførte værdi.
main.cpp
1234567891011#include <iostream> double square(const double number) { return number * number; } int main() { std::cout << square(25); }
const-kvalifikatoren sikrer, at parameteren number ikke kan ændres inden for funktionen square(), hvilket garanterer integriteten af de kopierede data.
Overfør const-argumenter via pointer/reference
Brug af const med pointere eller referencer beskytter de oprindelige data mod ændringer.
Overførsel via pointer eller reference sparer hukommelse, men const sikrer, at den oprindelige værdi forbliver uændret inde i funktionen.
main.cpp
12345678910111213141516171819#include <iostream> // Function definition double area(const double* radiusPtr, const double& pi) { // Check if the pointer and reference are not null if (*radiusPtr > 0) return pi * (*radiusPtr) * (*radiusPtr); return 0; // Invalid radius, return 0 } int main() { double radius = 5.0; double pi = 3.14159; double result = area(&radius, pi); std::cout << "Area of the circle with radius " << radius << " is: " << result << std::endl; }
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat