std::stacktrace_entry::source_file
| std::string source_file() const; |
(seit C++23) | |
Gibt den vermuteten oder tatsächlichen Namen der Quelldatei zurück, die die Anweisung oder das Statement lexikalisch enthält, deren Auswertung durch *this repräsentiert wird, oder eine leere Zeichenkette im Fehlerfall, außer bei Speicherzuordnungsfehlern, z.B. wenn *this leer ist.
Entweder gibt source_file den vermuteten Quellcode-Dateinamen und source_line die vermutete Zeilennummer zurück, oder source_file gibt den tatsächlichen Quellcode-Dateinamen und source_line die tatsächliche Zeilennummer zurück.
Inhalt |
[edit] Parameter
(keine)
[edit] Rückgabewert
Der oben genannte Name der Quelldatei im Erfolgsfall, eine leere Zeichenkette im Fehlerfall, außer bei Speicherzuordnungsfehlern.
[edit] Ausnahmen
Löst std::bad_alloc aus, wenn der Speicher für die internen Datenstrukturen oder die resultierende Zeichenkette nicht zugeordnet werden kann.
[edit] Hinweise
Der vermutete Name der Quelldatei ist das, wozu das vordefinierte Makro __FILE__ erweitert wird, und kann durch die #line-Direktive geändert werden.
| Dieser Abschnitt ist unvollständig Grund: Definition von "tatsächlicher Name" fehlt (LWG issue 3507) |
Die Unterstützung für benutzerdefinierte Allokatoren für diese Funktion wird nicht bereitgestellt, da die Implementierungen normalerweise plattformspezifische Allokationen, Systemaufrufe und viele CPU-intensive Arbeiten erfordern, während ein benutzerdefinierter Allokator für diese Funktion keine Vorteile bietet, da die plattformspezifischen Operationen um Größenordnungen länger dauern als die Allokation.
[edit] Beispiel
| Dieser Abschnitt ist unvollständig Grund: kein Beispiel |
[edit] Siehe auch
| gibt den von diesem Objekt repräsentierten Dateinamen zurück (public member function of std::source_location) |