C ++ 20 è la destinazione per la versione di C ++ dopo C ++ 17. Questo tag dovrebbe essere usato (insieme al tag C ++) per domande sulle funzionalità di C ++ in pista per C ++ 20.
C ++ 20 consente l'utilizzo autoper il tipo di parametro della funzione. Permette anche di utilizzare autocome segnaposto argomento modello (non simile, ma nello spirito del modello C ++ 17 <auto> in un certo senso) per il tipo di parametro funzione? Quindi il seguente codice, pre C ++ 20: template<typename …
[basic.scope.pdecl] / 1 della bozza standard C ++ 20 conteneva il seguente esempio (non normativo) in una nota (citazione parziale precedente alla fusione della richiesta pull 3580 , vedere la risposta a questa domanda): unsigned char x = x; [...] x è inizializzato con il suo valore (indeterminato). Questo ha …
In C ++ 20, il concetto di POD è deprecato, presumibilmente perché è un tratto composito insignificante di essere banale e layout standard. Tuttavia, la definizione di POD nella bozza C ++ 20 non è esattamente "sia banale che standard-layout"; in realtà è: Una classe POD è una classe che …
https://www.timeanddate.com/date/weekday.html calcola vari fatti su un giorno dell'anno, ad esempio: Data una data arbitraria, come possono essere calcolati questi numeri con la specifica cronografo C ++ 20 ?
Osservando la possibile implementazione del concetto same_as su https://en.cppreference.com/w/cpp/concepts/same_as ho notato che sta accadendo qualcosa di strano. namespace detail { template< class T, class U > concept SameHelper = std::is_same_v<T, U>; } template< class T, class U > concept same_as = detail::SameHelper<T, U> && detail::SameHelper<U, T>; La prima domanda è: …
C'è un modo per verificare in C ++ 11 se un enum è continuo ? È pienamente valido fornire valori enum che non lo sono. C'è forse una caratteristica come una caratteristica del tipo in C ++ 14, C ++ 17 o forse C ++ 20 per verificare se l'enum …
C ++ utilizza il streamofftipo per rappresentare un offset all'interno di un flusso (file) ed è definito come segue in [stream.types]: using streamoff = implementation-defined ; Il tipo streamoff è sinonimo di uno dei tipi integrali di base firmati di dimensioni sufficienti per rappresentare la dimensione massima del file possibile …
Secondo cppreference , la maggior parte degli usi della volatileparola chiave devono essere deprecati in C ++ 20. Qual è lo svantaggio di volatile? E qual è la soluzione alternativa quando non si usa volatile?
Sto giocando con [[no_unique_address]]dentro c++20. Nell'esempio su cppreference abbiamo un tipo Emptye un tipo vuotiZ struct Empty {}; // empty class struct Z { char c; [[no_unique_address]] Empty e1, e2; }; Apparentemente, la dimensione di Zdeve essere almeno 2perché i tipi di e1e e2sono gli stessi. Tuttavia, voglio davvero avere …
Esiste una proprietà molto accurata delle espressioni costanti in C ++: la loro valutazione non può avere un comportamento indefinito ( 7.7.4.7 ): Un'espressione e è un'espressione costante centrale a meno che la valutazione di e, seguendo le regole della macchina astratta ([intro.execution]), valuti una delle seguenti: ... un'operazione che …
In C ++ 20, std::swapdiventa una constexprfunzione. So che la biblioteca standard è rimasta davvero indietro rispetto al linguaggio nel marcare le cose constexpr, ma nel 2017 <algorithm>era praticamente rappresentata come un mucchio di altre cose. Eppure - std::swapnon lo era. Ricordo vagamente che c'è qualche strano difetto del linguaggio …
Da cppreference std::chrono::years (since C++20) duration</*signed integer type of at least 17 bits*/, std::ratio<31556952>> Usando libc++, sembra che la memoria di sottolineatura di std::chrono::yearsis shortsia firmata a 16 bit . std::chrono::years( 30797 ) // yields 32767/01/01 std::chrono::years( 30797 ) + 365d // yields -32768/01/01 apparently UB C'è un refuso su …
Nel suo recente discorso "Digitare la punzonatura nel moderno C ++" Timur Doumler ha affermato che std::bit_castnon può essere utilizzato per eseguire il bit di bit floatin un unsigned char[4]perché gli array in stile C non possono essere restituiti da una funzione. Dovremmo usare std::memcpyo attendere fino a C ++ …
Cerco di comprendere i tipi di espressione di C ++ e più leggo, più sono confuso, poiché trovo la bozza di C ++ molto difficile da digerire e quindi preferisco altre risorse ma si contraddicono a vicenda o non tengono conto del fatto che il la formulazione e la definizione …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.