Domande taggate «c++14»

C ++ 14 è il nome dello standard C ++, approvato nel 2014. Si basa sul precedente standard C ++ 11, migliorando il linguaggio di base e la libreria standard e aggiungendo alcune funzionalità.




8
Cattura lambda come riferimento const?
È possibile catturare per riferimento const in un'espressione lambda? Voglio che il compito indicato di seguito fallisca, ad esempio: #include <cstdlib> #include <vector> #include <string> #include <algorithm> using namespace std; int main() { string strings[] = { "hello", "world" }; static const size_t num_strings = sizeof(strings)/sizeof(strings[0]); string best_string = "foo"; …
166 c++  c++11  lambda  c++14 

2
Quali sono alcuni usi di decltype (auto)?
Altre versioni di Stack Overflow di Stack Overflow : Versione decltype (auto) In c ++ 14 decltype(auto)viene introdotto il linguaggio. In genere il suo uso è consentireautodecltype alle dichiarazioni di usare le regole sull'espressione data . Cercando esempi di "buon" uso del linguaggio posso solo pensare a cose come le …

2
Come funziona `void_t`
Ho visto il discorso di Walter Brown a Cppcon14 sulla programmazione di modelli moderni ( Parte I , Parte II ) in cui ha presentato la sua void_ttecnica SFINAE. Esempio: dato un semplice modello variabile che valuta voidse tutti gli argomenti del modello sono ben formati: template< class ... > …
149 c++  templates  c++14  sfinae 


2
#Pragma fa parte dello standard C ++ 11?
Tradizionalmente, il modo standard e portatile per evitare inclusioni multiple di intestazione in C ++ era / è quello di utilizzare lo #ifndef - #define - #endifschema di direttive pre-compilatore chiamato anche schema di macro-guardia (vedi frammento di codice sotto). #ifndef MY_HEADER_HPP #define MY_HEADER_HPP ... #endif Nella maggior parte delle …

1
Copia / sposta l'assegnazione in std :: vector :: erase () e std :: deque :: erase ()
Nel rispondere a un'altra domanda mi sono imbattuto in formulazioni leggermente diverse per std::vector::erase()e std::deque::erase(). Questo è ciò che dice C ++ 14 std::deque::erase( [deque.modifiers]/4-6, l'enfasi è mia): Effetti: ... Complessità: il numero di chiamate al distruttore è uguale al numero di elementi cancellati, ma il numero di chiamate all'operatore …


3
Come funziona lambda generico in C ++ 14?
Come funziona lambda generico ( autoparola chiave come tipo di argomento) nello standard C ++ 14? È basato su modelli C ++ in cui per ogni diverso tipo di argomento il compilatore genera una nuova funzione con lo stesso corpo ma tipi sostituiti (polimorfismo in fase di compilazione) o è …
114 c++  lambda  auto  c++14 


4
Cosa sono i comparatori trasparenti?
In C ++ 14, i contenitori associativi sembrano essere cambiati da C ++ 11 - [associative.reqmts] / 13 dice: I modelli funzione membro find, count, lower_bound, upper_bound, e equal_rangenon devono partecipare alla risoluzione di sovraccarico a meno che il tipo Compare::is_transparentesiste. Qual è lo scopo di rendere "trasparente" un comparatore? …
106 c++  c++14  c++-faq 

3
C ++ 14 aggiunge nuove parole chiave a C ++?
Il Comitato per gli standard C ++ tende a evitare di aggiungere nuove parole chiave al linguaggio, ma con C ++ 11 non è stato così. Qualche esempio: constexpr decltype thread_local auto // New usage noexcept nullptr static_assert alignof alignas Sono state introdotte nuove parole chiave con C ++ 14?
103 c++  c++11  keyword  c++14 


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.