by Anonymous » 03 Jun 2025, 20:10
Verwendung < /p>
Code: Select all
g++ -std=gnu++17 -Werror -Wall -Wextra
Der folgende Code erfasst ohne Vorwarnung:
Code: Select all
struct Mutable {
int x;
};
class State {
public:
constexpr const Mutable &Immutable() const {
return mutable_;
}
private:
Mutable mutable_;
} state_instance;
Nach dem, was ich gelesen habe, bedeutet jeder Const in dieser Signatur etwas anderes:
Der Constexpr bedeutet im Wesentlichen bedeutet, dass die Mitgliedsfunktion zum Kompilieren der Kompilierung bewertet werden kann. /> Der zweite Const < /code> bedeutet, dass die Mitgliedsfunktion verspricht, keine Mitgliedsvariablen zu mutieren. /> Wie verwendet ein Contexpr für eine nicht-konstete Mitgliedsfunktion?>
Verwendung < /p>
[code]g++ -std=gnu++17 -Werror -Wall -Wextra[/code]
Der folgende Code erfasst ohne Vorwarnung:
[code]struct Mutable {
int x;
};
class State {
public:
constexpr const Mutable &Immutable() const {
return mutable_;
}
private:
Mutable mutable_;
} state_instance;
[/code]
Nach dem, was ich gelesen habe, bedeutet jeder Const in dieser Signatur etwas anderes:
Der Constexpr bedeutet im Wesentlichen bedeutet, dass die Mitgliedsfunktion zum Kompilieren der Kompilierung bewertet werden kann. /> Der zweite Const < /code> bedeutet, dass die Mitgliedsfunktion verspricht, keine Mitgliedsvariablen zu mutieren. /> Wie verwendet ein Contexpr für eine nicht-konstete Mitgliedsfunktion?>