Por exemplo: int a = 12; cout << typeof(a) << endl; Saída
Por exemplo: int a = 12; cout << typeof(a) << endl; Saída
Observe as atualizações no final deste post. Atualização: eu criei um projeto público no GitHub para esta biblioteca! Gostaria de ter um único modelo que, de uma vez por todas, cuide da impressão bonita de todos os contêineres STL via operator<<. No pseudo-código, estou procurando algo...
Estou bastante familiarizado com C ++ 11 do std::thread, std::asynce std::futurecomponentes (por exemplo, veja esta resposta ), que são simples e direta. No entanto, não consigo entender bem o que std::promiseé, o que faz e em que situações é melhor usado. O documento padrão em si não contém muita...
Eu tenho aula template<size_t N, size_t M> class Matrix { // .... }; Eu quero fazer um typedefque cria um Vector(vetor de coluna) que é equivalente a um Matrixcom tamanhos N e 1. Algo assim: typedef Matrix<N,1> Vector<N>; O que produz erro de compilação. O seguinte cria algo...
Estou tentando atualizar meu compilador C ++ para C ++ 11. Pesquisei um pouco e cheguei à conclusão de que tenho de usar a bandeira -std=c++0xou -std=gnu++0x, mas não sei muitas coisas sobre bandeiras. Alguém pode me ajudar? (Estou usando o Ubuntu 12.04.) Aqui está o erro que eu recebo do...
unique_ptr<T>não permite a construção da cópia, mas suporta a semântica de movimentação. No entanto, posso retornar a unique_ptr<T>de uma função e atribuir o valor retornado a uma variável. #include <iostream> #include <memory> using namespace std; unique_ptr<int>...
Quando tento executar um makefile gerado pelo CMake para compilar meu programa, recebo o erro que o intervalo baseado em loops não é suportado no modo C ++ 98. Tentei adicionar add_definitions(-std=c++0x)ao meu CMakeLists.txt, mas não ajudou. Eu tentei isso
Como instalar arquivos no Stack Overflow em um arquivo : local std :: unique_lock por std :: lock_guard? Eu tenho dois casos de uso. A. Eu quero sincronizar o acesso por dois threads em uma fila. B. Quero sincronizar o acesso de dois threads a uma fila e usar uma...
Parece-me que ter uma "função que sempre retorna 5" está quebrando ou diluindo o significado de "chamar uma função". Deve haver um motivo ou uma necessidade desse recurso ou não seria no C ++ 11. Por que está aí? // preprocessor. #define MEANING_OF_LIFE 42 // constants: const int MeaningOfLife =...
O exemplo comum para loops for () baseados no intervalo do C ++ 11 é sempre algo simples como este: std::vector<int> numbers = { 1, 2, 3, 4, 5, 6, 7 }; for ( auto xyz : numbers ) { std::cout << xyz << std::endl; } Nesse caso, xyzé um int. Mas, o que acontece quando temos algo...
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 mais...
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 !=...
É possível que o código C ++ esteja em conformidade com o padrão C ++ 03 e o padrão C ++ 11 , mas faça coisas diferentes dependendo de qual padrão ele está sendo
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...
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...
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...
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...
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? Já existem alguns coletores de...
Comecei a estudar ponteiros inteligentes do C ++ 11 e não vejo nenhum uso útil de std::weak_ptr. Alguém pode me dizer quando std::weak_ptré útil /