Perguntas com a marcação «c++11»

Use essa tag para código que deve ser compilado como C ++ 11 (sem usar os recursos introduzidos no C ++ 14 ou posterior).

5
Para que servem os namespaces embutidos?
O C ++ 11 permite inline namespaces, todos os membros dos quais também estão automaticamente no anexo namespace. Não consigo pensar em nenhuma aplicação útil disso - alguém pode, por favor, dar um exemplo sucinto e breve de uma situação em que inline namespaceé necessário e onde é a solução …

8
C ++ 11 loop for baseado em intervalo reverso
Existe um adaptador de contêiner que inverta a direção dos iteradores para que eu possa iterar sobre um contêiner invertido com loop for baseado em intervalo? Com iteradores explícitos, eu converteria isso: for (auto i = c.begin(); i != c.end(); ++i) { ... nisso: for (auto i = c.rbegin(); i …
321 c++  c++11  ranged-loops 



5
Iniciar thread com função membro
Eu estou tentando construir um std::threadcom uma função de membro que não leva argumentos e retornos void. Não consigo descobrir nenhuma sintaxe que funcione - o compilador reclama, não importa o quê. Qual é a maneira correta de implementar spawn()para que ele retorne um std::threadque seja executado test()? #include <thread> …

8
Diferença no make_shared e shared_ptr normal em C ++
std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")); Muitas postagens do google e do stackoverflow existem sobre isso, mas não consigo entender por que make_sharedé mais eficiente do que usar diretamente shared_ptr. Alguém pode me explicar passo a passo a sequência de objetos criados e operações realizadas por ambos, para que …
276 c++  c++11  shared-ptr 

1
Como “int main () {(([] () {}) ());}” é válido em C ++?
Recentemente, deparei com o seguinte código esotérico. int main(){(([](){})());} Reformate-o da seguinte forma para torná-lo mais legível: int main(){ (([](){})()); // Um... what?!?! } Mas não consigo entender como (([](){})())é um código válido. Não parece com a sintaxe do ponteiro de função. Não pode ser um truque de sobrecarga do …
271 c++  c++11  lambda  syntax 

10
Devemos passar um shared_ptr por referência ou por valor?
Quando uma função recebe um shared_ptr(de boost ou C ++ 11 STL), você a 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 rápido. Mas isso realmente vale a pena ou existem outros problemas? …
270 c++  c++11  boost  shared-ptr 

16
Por que o C ++ não possui um coletor de lixo?
Não estou fazendo essa pergunta por causa dos méritos da coleta de lixo antes de tudo. Minha principal razão para perguntar isso é que eu sei que Bjarne Stroustrup disse que o C ++ terá um coletor de lixo em algum momento. Com isso dito, por que não foi adicionado? …



8
"Desembalar" uma tupla para chamar um ponteiro de função correspondente
Estou tentando armazenar em um std::tuplenúmero variável de valores, que mais tarde serão usados ​​como argumentos para uma chamada para um ponteiro de função que corresponda aos tipos armazenados. Eu criei um exemplo simplificado mostrando o problema que estou tentando resolver: #include <iostream> #include <tuple> void f(int a, double b, …



12
to_string não é membro de std, diz g ++ (mingw)
Estou fazendo um pequeno programa de recordação de vocabulário, onde as palavras seriam mostradas aleatoriamente para mim em busca de significados. Eu quero usar a biblioteca C ++ padrão, como Bjarne Stroustroup nos diz, mas encontrei um problema aparentemente estranho logo de cara. Eu quero alterar um longnúmero inteiro std::stringpara …
245 c++  c++11  g++  mingw  tostring 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.