language-lawyer

Für Fragen zu den Feinheiten formeller oder autoritativer Spezifikationen von Programmiersprachen und Umgebungen.
1
Antwort

Unterschied zwischen 'T &' und 'const T &' für die Klasse all-const

Angenommen, ich habe eine Klasse wie diese: %Vor% Gibt es nun einen praktischen Unterschied zwischen dem Zugreifen auf die Objekte dieser Klasse durch Foo& , im Gegensatz zu const Foo& , außer dass diese zwei unterschiedliche Typ...
13.02.2012, 18:55
3
Antworten

vor dem Schreiben lesen ist nicht definiert mit Malloced-Speicher?

Laut diesem Reddit-Kommentar-Thread ist es undefiniert, ob ein Versuch unternommen wird Lese den Speicher, bevor er geschrieben wurde. Ich verweise auf normalen Heap-Speicher, der erfolgreich malloc ed. wurde    ... beachten Sie, dass di...
09.02.2012, 22:36
3
Antworten

constexpr Leere Funktion abgelehnt

Ich habe diese sehr einfache Funktion, die nicht kompiliert wird. %Vor% Der Fehler, den ich bekomme, ist: %Vor% In% C ++ 14 ist void ein Literaltyp [§3.9 / 10]:    Ein Typ ist ein literaler Typ , wenn er: ist       void; oder  ...
25.03.2015, 16:31
3
Antworten

sigsuspend vs zusätzliche Signale während der Ausführung des Handlers geliefert

sigsuspend ändert die Signalmaske und unterbricht die Ausführung des aufrufenden Threads, bis er empfangen wird ein "Signal, dessen Wirkung entweder darin besteht, eine Signalfangfunktion auszuführen oder den Prozess zu beenden" und dann (f...
14.11.2016, 15:17
1
Antwort

Entspricht ein Templatetypname ... nicht dem TemplateTypenname eines Fehlers?

Beim Durchsuchen dieser Antwort entdeckte ich, dass eine Vorlage, die ein Parameterpaket enthält, von einer erwarteten Vorlage nicht akzeptiert wird Vorlage mit einer bestimmten Anzahl von Parametern. Dies scheint mir ein Fehler zu sein, de...
09.12.2017, 17:16
2
Antworten

Interdependente Initialisierung mit Kommas?

Ist das Folgende perfekt definiert: %Vor% d. streng äquivalent zu: %Vor% EDIT: die Frage ist nicht über Stil (ich weiß, dass es falsch ist ...), die Frage ist "theoretisch"     
14.06.2014, 20:41
3
Antworten

externe Erklärung, T * v / s T []

Ich habe in einem älteren Projekt folgenden Code gesehen. %Vor% Ich bestand darauf, analyse.c so zu ändern, dass die Deklaration wie folgt enthalten ist: %Vor% Ich möchte v2 , weil pointer to T nicht dasselbe ist wie array of T...
14.11.2014, 06:33
1
Antwort

An welchem ​​Punkt erstellt map :: emplace ein Objekt?

Ist der Punkt, an dem std::map::emplace das Objekt (d. h. Aufruf des Konstruktors) irgendwie im Standard definiert? Wenn ja, passiert bevor das Vorhandensein eines solchen Schlüssels überprüft wird oder danach? Es ist sehr wichtig in den...
05.05.2016, 21:09
3
Antworten

Kann reinterpret_cast (oder eine beliebige Umwandlung) xvalues ​​in lvalues ​​umwandeln?

Ist der folgende Code zulässig (nach C ++ 11 und / oder C ++ 14 Standard (en))? %Vor% Wenn ja, ist das Verhalten nicht definiert? Wenn es nicht undefiniertes Verhalten ist, kann ich sogar a in foo mutieren, ohne dass es UB wird?...
07.11.2014, 02:30
3
Antworten

Sind 'char16_t' und 'char32_t' falsch?

NB: Ich bin mir sicher, dass jemand das als subjektiv bezeichnen wird, aber ich denke, es ist ziemlich greifbar. C ++ 11 gibt uns neue basic_string types std::u16string und std::u32string , geben Sie Aliase für std::basic_string&...
08.10.2012, 20:58