Domande taggate «language-lawyer»

Per domande sulla complessità di specifiche formali o autorevoli di linguaggi e ambienti di programmazione.



5
Definizione dell'operatore "==" per Double
Per qualche motivo stavo entrando di nascosto nel sorgente .NET Framework per la classe Doublee ho scoperto che la dichiarazione di ==è: public static bool operator ==(Double left, Double right) { return left == right; } La stessa logica vale per ogni operatore. Qual è il punto di tale definizione? …
126 c#  .net  language-lawyer 



6
Lambda che ritorna da sola: è legale?
Considera questo programma abbastanza inutile: #include <iostream> int main(int argc, char* argv[]) { int a = 5; auto it = [&](auto self) { return [&](auto b) { std::cout << (a + b) << std::endl; return self(self); }; }; it(it)(4)(6)(42)(77)(999); } Fondamentalmente stiamo cercando di creare un lambda che ritorni da …







7
Confusione sull'inizializzazione dell'array in C
In linguaggio C, se inizializza un array come questo: int a[5] = {1,2}; quindi tutti gli elementi dell'array che non sono inizializzati esplicitamente verranno inizializzati implicitamente con zeri. Ma, se inizializzo un array come questo: int a[5]={a[2]=1}; printf("%d %d %d %d %d\n", a[0], a[1],a[2], a[3], a[4]); produzione: 1 0 1 …

4
È possibile un riferimento nullo?
Questo pezzo di codice è valido (e ha un comportamento definito)? int &nullReference = *(int*)0; Sia g ++ e clang ++ compilarlo senza alcun preavviso, anche quando si utilizza -Wall, -Wextra, -std=c++98, -pedantic, -Weffc++... Ovviamente il riferimento non è effettivamente nullo, poiché non è possibile accedervi (significherebbe dereferenziare un puntatore …

8
"Else if" è una singola parola chiave?
Sono nuovo in C ++. Vedo spesso una dichiarazione condizionale come di seguito: if statement_0; else if statement_1; Domanda: Sintatticamente , devo trattare else ifcome una singola parola chiave? O è effettivamente un'istruzione annidata ifall'interno dell'esterno elsecome di seguito? if statement_0; else if statement_1;

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.