Resultados da pesquisa a pedido "c++11"
Valor armazenado quando a leitura do istream falha
Código de amostra: #include <iostream> int main() { int x = 5; std::cin >> x; std::cout << x << '\n'; }Emuma implementação particular [https://stackoverflow.com/questions/32944448/cin-val-sometimes-reads-0-depending-on-ctrl-z] o seguinte ...
Baseado em intervalo para loops e ADL
oRascunho de trabalho padrão C ++ 0x [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf]afirma (seção 6.5.4) o seguinte sobre as chamadas begin () e end () implícitas em um loop for baseado em intervalo: 'begin' e 'end' são ...
Por que não há função de espera para a variável de condição, que não trava novamente o mutex
Considere o seguinte exemplo. std::mutex mtx; std::condition_variable cv; void f() { { std::unique_lock<std::mutex> lock( mtx ); cv.wait( lock ); // 1 } std::cout << "f()\n"; } void g() { std::this_thread::sleep_for( 1s ); cv.notify_one(); } ...
Existe uma maneira de impor a inicialização completa do std :: array
estou usandostd::array<size_t, N> (N é uma variável de modelo fixa). #include<array> template<size_t N> struct A{ size_t function(std::array<size_t, N> arr){ return arr[N-1];} // just an example }; int main(){ A<5> a; a.function({{1,2,3,4,5}})); ...
Quando um lambda é trivial?
Quando um lambda é garantido como trivial, se é que existe? Supus que, se capturasse apenas tipos triviais ou nada, seria trivial. Eu não tenho nenhum padrão para apoiar isso. Minha motivação foi mover algum código do Visual C ++ 12 para 14 e ...
Chame uma função antes que a função saia
Vou começar com um exemplo. Suponha que eu precise proteger um código com uma função dentro de um mutex. Existem duas maneiras de implementar isso. #include <iostream> #include <vector> #include <pthread.h> pthread_mutex_t myMutex = ...
Misturando declarações constexpr e definições const
Me deparei com a seguinte situação: struct Foo { static constexpr char s[] = "Hello world"; }; const char Foo::s[]; Esse trecho de código é compilado com o Clang 3.7 (com-std=c++11 e-std=c++14), mas o GCC (4.8, 6.0, configurações do mesmo ...
Em C ++, como mover cada elemento um para a direita usando apenas ponteiros? [fechadas]
por exemplo, essa matriz, por exemplo, [1,2,3,4,5] se tornaria essa matriz [5,1,2,3,4] é isso que eu criei, mas não funciona: int *ptr = arr; //initialize to first element int *ptr2 = arr+1; //initialize it to second element while (n >0) // ...
As uniões irrestritas exigem posicionamento novo e uma definição de construtor?
Os exemplos que eu já vi de uniões irrestritas sempre parecem usar novas colocações na construção. O artigo da Wikipedia para recursos do C ++ 11 usa posicionamento novo no construtor de uma ...
Devemos passar um shared_ptr por referência ou por valor?
Quando uma função recebe umshared_ptr (do boost ou C ++ 11 STL), você está passando: por referência const:void foo(const shared_ptr<T>& p) ou por valor:void foo(shared_ptr<T> p) ? Eu preferiria o primeiro método porque suspeito que seria mais ...