Video: Variable and Constant in C (HINDI/URDU) 2025
Da C ++ passerer argumentets værdi, kan du ikke differentiere ved konstans. I det følgende bliver der faktisk overført til maksimum () værdierne 2. 0 og 0. 0. Funktionen maksimum () kan ikke fortælle om disse værdier stammer fra en variabel som dArg eller konstant som 0. 0. < dobbelt maksimal (dobbelt d1, dobbelt d2); void otherFunction () {double dArg = 2. 0; dobbelt dNonNegativ = maksimum (dArg, 0. 0);
Du
kan erklærer argumenterne for en funktion for at være const. En sådan erklæring betyder, at du ikke kan ændre argumentets værdi inden for funktionen. Dette er demonstreret i følgende implementering af maksimum (dobbelt, dobbelt):
Opgaven til d1 og d2 er ikke tilladt, fordi begge er blevet deklareret const og derfor ikke kan ændres.
Hvad der ikke er lovligt, er følgende:
// Disse to funktioner er ikke forskellige nok til at skelne mellem dobbelt maksimum (dobbelt d1, double d2); dobbelt maksimum (const double d1, const double d2); void otherFunction () {double dArg = 2. 0; // C ++ ved ikke hvilken af ovenstående funktioner at kalde dobbelt dNonNegative = maksimum (dArg, 0. 0);
Her har C ++ ingen mulighed for at differentiere mellem de to, når du foretager opkaldet.