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à.

6
errore :: make_unique non è un membro di "std"
Sto cercando di compilare il seguente programma di pool di thread pubblicato sulla revisione del codice per testarlo. /codereview/55100/platform-independant-thread-pool-v4 Ma sto ottenendo gli errori threadpool.hpp: In member function ‘std::future<decltype (task((forward<Args>)(args)...))> threadpool::enqueue_task(Func&&, Args&& ...)’: threadpool.hpp:94:28: error: ‘make_unique’ was not declared in this scope auto package_ptr = make_unique<task_package_impl<R, decltype(bound_task)>> (std::move(bound_task), std::move(promise)); ^ …

2
Qual è lo scopo di utilizzare un'unione con un solo membro?
Quando stavo leggendo il codice sorgente di seastar , ho notato che esiste una struttura sindacale chiamata tx_sideche ha un solo membro. È un trucco per affrontare un certo problema? Cordiali saluti, incollo la tx_sidestruttura qui sotto: union tx_side { tx_side() {} ~tx_side() {} void init() { new (&a) aa; …
89 c++  c++14  unions 

5
Perché un lambda ha una dimensione di 1 byte?
Sto lavorando con la memoria di alcuni lambda in C ++, ma sono un po 'perplesso dalla loro dimensione. Ecco il mio codice di prova: #include <iostream> #include <string> int main() { auto f = [](){ return 17; }; std::cout << f() << std::endl; std::cout << &f << std::endl; std::cout …
89 c++  c++11  lambda  c++14  sizeof 

3
Cos'è const void?
La descrizione di std::is_voidafferma che: Fornisce il valore della costante del membro che è uguale a true, se T è il tipo void, const void, volatile void o const volatile void. Allora cosa potrebbe essere const void, o un volatile void? Questa risposta afferma che il const voidtipo restituito non …
89 c++  c++11  c++14 





3
I valori di chiusura lambda possono essere passati come parametri di riferimento del valore
Ho scoperto che lvaluele chiusure lambda possono sempre essere passate come rvalueparametri di funzione. Vedi la seguente semplice dimostrazione. #include <iostream> #include <functional> using namespace std; void foo(std::function<void()>&& t) { } int main() { // Case 1: passing a `lvalue` closure auto fn1 = []{}; foo(fn1); // works // Case …

4
Enum continuo C ++ 11
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 …
17 c++  c++11  c++14  c++17  c++20 



1
È possibile passare un modello variabile come argomento del modello modello?
Il seguente esempio senza senso non viene compilato, ma esiste un altro modo per passare un modello variabile come argomento del modello modello? template<typename T> constexpr auto zero = T{0}; template<typename T, template<typename> auto VariableTemplate> constexpr auto add_one() { return VariableTemplate<T> + T{1}; } int main() { return add_one<int, zero>(); …


2
Come eludere la copia durante il concatenamento?
Sto creando una classe di tipo concatenamento, come il piccolo esempio di seguito. Sembra che quando si concatenano funzioni membro, viene invocato il costruttore di copie. C'è un modo per sbarazzarsi della chiamata del costruttore della copia? Nel mio esempio di giocattolo qui sotto, è ovvio che ho a che …
10 c++  c++14  c++17 

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.