Normalerweise sehe ich den const
Spezifizierer, der verwendet wird, um eine konstante Elementfunktion anzuzeigen. Aber was bedeutet es, wenn das Schlüsselwort volatile
verwendet wird?Was bedeutet es, wenn eine Mitgliedsfunktion flüchtig ist?
void f() volatile {}
Das kompiliert für mich gut, aber ich verstehe nicht, wofür das ist. Ich konnte bei meiner Suche keine Informationen darüber finden, daher wird jede Hilfe geschätzt.
Update: Um es klar zu machen, weiß ich, was volatile
ist für. Ich weiß einfach nicht, was es in diesem Zusammenhang bedeutet.
Was bedeutet flüchtiges Objekt? [kann sich ändern?] – Dineshkumar
"volatile" gibt an, dass auf den Wert von Dingen zugegriffen werden kann, die dem Compiler unbekannt sind (z. B. Speicherkartenhardware), und bestimmte Optimierungen deaktiviert sind. Der Zugriff auf einen "volatilen" Wert wird als Nebeneffekt im Sinne der Als-ob-Regel behandelt. – Mankarse
Aber sind "Objekte" definitionsgemäß nicht flüchtig für Elementfunktionen, wenn wir an eine Elementfunktion denken, die einen "A * this" impliziten Parameter erhält? – einpoklum