Heim >Backend-Entwicklung >C++ >Sollten Sie „const'-Werte in C zurückgeben?

Sollten Sie „const'-Werte in C zurückgeben?

DDD
DDDOriginal
2024-12-13 05:00:161024Durchsuche

Should You Return `const` Values in C  ?

Warum Const Value Returns verwenden?

Problem:

Bedenken Sie den folgenden Codeausschnitt:

const Object myFunc() {
    return myObject;
}

Was ist der Zweck des const-Schlüsselworts hier? Während das Effective C Item 3 seine Verwendung befürwortet, gehen die Meinungen auseinander.

Antwort:

In dem seltenen Fall, dass zuvor eine nicht konstante Operation an einem Objekt ausgeführt werden konnte Zuweisung, eine konstante Wertrückgabe verhindert den versehentlichen Aufruf einer solchen Operation auf einer temporären Basis.

Diese Praxis ist jedoch veraltet. In C 11 und höher wird dringend empfohlen, nicht konstante Werte zurückzugeben, um r-Wert-Referenzen vollständig zu nutzen, die nur für nicht konstante r-Werte gültig sind.

Im Wesentlichen gab es zwar Gründe für die Verwendung von konstante Wertrückgaben, Sie sind im modernen C nicht mehr überzeugend.

Das obige ist der detaillierte Inhalt vonSollten Sie „const'-Werte in C zurückgeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn