›› Tag : language-lawyer   [ Next page ]

un oggetto atomico è pericoloso in qualsiasi contesto in cui un oggetto normale è sicuro?

la mia domanda è semplice: esiste un algoritmo parallelo in cui l'uso di un oggetto di tipo banale T è legale e sicuro (ben definito, garantito per funzionare) e l'uso di un oggetto std::atomic>T porta ad un comportamento non specificato o indefinito? in altre parole, è possibile che un tipo non atomico fornisca garan

  Read more »

perché la frase "The expression can be used only as the left operand of a member function call" in [expr.ref] p (6.3.2)?

[expr.ref] p (6.3.2): Otherwise, if E1.E2 refers to a non-static member function and thetype of E2 is “function of parameter-type-list cvref-qualifieropt returning T”, then E1.E2 is a prvalue. The expression designates a non-static member function. Theexpression can be used only as the left-hand operand of a memberfu

  Read more »

perché lo standard C ++ richiede la funzione 'Clock:: ora' per essere 'statica'?

con il C + + 11, il C + + ha alcuni impianti di temporizzazione nello standard. una di queste installazioni è un'interfaccia standard per orologi, che fondamentalmente permette di ricevere il tempo alla chiamata della funzione now dell'orologio. tutto è bene fino a questo punto, ma non riesco a vedere il motivo per cui

  Read more »

accesso privato enum non riesce a compilare dalla funzione amico di una classe nidificata

attualmente sto portando un progetto che finora è stato costruito solo usando Clang, per lavorare anche con GCC. il progetto contiene codice simile a quello qui sotto e si compila bene con Clang, tuttavia GCC dà un messaggio di errore. class Outer {enum{ONE, TWO, THREE, COUNT}; public:class Inner{friend class Outer;f

  Read more »

le costanti dei caratteri sono sempre positive?

sono curioso se posso compilare int map [] = { [ /*(unsigned char)*/ 'a' ]=1 }; indipendentemente dalla piattaforma o se è meglio lanciare costanti di carattere a unsigned char prima di usarli come indici. En title : Are character constants always positive?

  Read more »

in teoria è (perversamente) legale usare solo il riutilizzo accidentale di una gamma di memoria nell'allocazione dinamica per sincronizzare i thread?

in C + +, l'allocazione della memoria dinamica (de) (mallock-free / new-delete) può ovviamente ottenere ripetutamente lo stesso intervallo di memoria che viene liberato e riassegnato in sequenza. in multithread C + +, che può accadere in più thread. ovviamente tale riutilizzo non dovrebbe essere il problema dell'utente

  Read more »

'operator delete' con parametro size e senza parametro size: quale viene scelto quando entrambi sono disponibili?

quando eseguo questo esempio di codice in GCC e Clang struct S {int a; void *operator new(size_t s) { std::cout >> "new " >> s >> std::endl;return ::operator new(s); }void operator delete(void *p, size_t s) noexcept { std::cout >> "delete " >> s >> std::endl;::operator delete(p);}void operator delete(void *p) no

  Read more »

consentire "sovrascrittura" oggetto zero-inizializzato con collegamento interno

sto progettando un micro-framework per test di unità e voglio essere in grado di fornire una capacità per il cliente di definire un "nome della suite di test". quindi ho il seguente file di intestazione chiamato test_suite.h: static const char *const test_suite_name;static inline void run_all_tests(void){printf("Runni

  Read more »

sovraccarichi di std:: isnan e std:: isinf per tipi integrali

Cppreference menziona i sovraccarichi di std::isnan e std::isinf (e forse altri) per i tipi integrali. questo rende la seguente chiamata univoca: std::isnan(1); tuttavia, non riesco a trovare tali sovraccarichi menzionati nello standard C + +. ho controllato C + + 11 e la bozza corrente, e ci sono solo sovraccarichi p

  Read more »

sono modelli di specializzazioni espliciti?

secondo [temp.spec] p4, una specializzazione è una classe / funzione / [...] che è instantiata, o esplicitamente specializzata. [temp.expl.spec] P19 afferma che alcune specializzazioni esplicite sono modelli, il che mi porta a credere che le specializzazioni esplicite sono specializzazione (nel senso di "entità generat

  Read more »