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
Por que um lambda tem o tamanho de 1 byte?
Estou trabalhando com a memória de alguns lambdas em C ++, mas estou um pouco confuso com o tamanho deles. Aqui está meu código de teste: #include <iostream> #include <string> int main() { auto f = [](){ return 17; }; std::cout << f() << std::endl; std::cout << &f << std::endl; …
89 c++  c++11  lambda  c++14  sizeof 

3
Como fazer um typedef condicional em C ++
Estou tentando fazer algo assim: #include <iostream> #include <random> typedef int Integer; #if sizeof(Integer) <= 4 typedef std::mt19937 Engine; #else typedef std::mt19937_64 Engine; #endif int main() { std::cout << sizeof(Integer) << std::endl; return 0; } mas recebo este erro: error: missing binary operator before token "(" Como posso fazer corretamente …
89 c++  c++11 



4
Como armazenar argumentos de modelo variadic?
É possível armazenar um pacote de parâmetros de alguma forma para um uso posterior? template <typename... T> class Action { private: std::function<void(T...)> f; T... args; // <--- something like this public: Action(std::function<void(T...)> f, T... args) : f(f), args(args) {} void act(){ f(args); // <--- such that this will be possible …

3
Confusão de inicialização padrão, valor e zero
Estou muito confuso sobre a inicialização de valor e padrão e zero. e especialmente quando eles são iniciados para os diferentes padrões C ++ 03 e C ++ 11 (e C ++ 14 ). Estou citando e tentando estender uma resposta realmente boa Valor- / Padrão- / Zero- Init C …
89 c++  c++11  c++14  c++03  c++98 



6
Função que retorna uma expressão lambda
Gostaria de saber se é possível escrever uma função que retorna uma função lambda em C ++ 11. Claro, um problema é como declarar tal função. Cada lambda tem um tipo, mas esse tipo não pode ser expresso em C ++. Eu não acho que isso funcionaria: auto retFun() -> …
88 c++  function  c++11  lambda 


5
Passando ponteiros compartilhados como argumentos
Se eu declarar um objeto envolvido em um ponteiro compartilhado: std::shared_ptr<myClass> myClassObject(new myClass()); então eu queria passá-lo como um argumento para um método: DoSomething(myClassObject); //the called method void DoSomething(std::shared_ptr<myClass> arg1) { arg1->someField = 4; } O acima simplesmente incrementa a contagem de referência do shared_pt e está tudo bem? Ou …

3
Descontinuação da palavra-chave estática ... não mais?
Em C ++, é possível usar a staticpalavra - chave em uma unidade de tradução para afetar a visibilidade de um símbolo (variável ou declaração de função). No n3092, isso foi descontinuado: Anexo D.2 [depr.static] O uso da palavra-chave static é descontinuado ao declarar objetos no escopo do namespace (ver …
87 c++  static  c++11  standards 

5
Quais são as opções de link corretas para usar std :: thread no GCC no Linux?
Olá, estou tentando usar o std::threadG ++. Aqui está meu código de teste #include <thread> #include <iostream> int main(int, char **){ std::thread tt([](){ std::cout<<"Thread!"<<std::endl; }); tt.join(); } Compila, mas quando tento executá-lo, o resultado é: terminate called after throwing an instance of 'std::system_error' what(): Operation not permitted Aborted Minha versão …



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.