c++11

как я могу вывести значение enum class в C++11? В C++03 это так: #include <iostream> using namespace std; enum A { a = 1, b = 69, c= 666 }; int main () { A a = A::c; cout << a << endl; } В c++0x этот код не компилируется #include <iostream> using namespace std; enum ...

в C++11 поддерживает новый синтаксис функции: auto func_name(int x, int y) -> int; в настоящее время эта функция будет объявлена как: int func_name(int x, int y); новый стиль, похоже, еще не получил широкого распространения (скажем, в GCC stl) однако, должен ли этот новый стиль быть предпочтительным...

Предположим, у меня есть функция, которая складывает два значения. Если я ничего не знаю о типах, то я в основном должен написать свою функцию дважды; один раз в фактическом возвращаемом значении и снова в качестве спецификатора возвращаемого типа: template <typename A, typename B> auto Add(const A&...

компиляция этого примера кода для boost:: program_options:http://svn.boost.org/svn/boost/trunk/libs/program_options/example/first.cpp ...на MacOS Lion (10.7.2), используя boost-1.48.0 установлен с MacPorts: $ clang++ -v Apple clang version 3.0 (tags/Apple/clang-211.12) (based on LLVM 3.0svn) Target: x86_64-...

рассмотрим класс X С N переменные-члены, каждый из некоторых копировать и движимое тип, и N соответствующий сеттера. В C++98 определение X скорее всего, будет выглядеть примерно так: class X { public: void set_a(A const& a) { _a = a; } void set_b(B const& b) { _b = b; } ... private: ...

вы знаете, мы можем обернуть или сохранить лямбда-функцию в std::function: #include <iostream> #include <functional> int main() { std::function<float (float, float)> add = [](float a, float b) // ^^^^^^^^^^^^^^^^^^^^ { return a + b; }; std::cout <&...

позвольте мне начать с изложения моего намерения. В старые (C++) дни у нас был бы такой код: class C { public: enum {SOME_VALUE=27}; }; тогда мы могли бы использовать SOME_VALUE во всем нашем коде как константа времени компиляции и везде, где компилятор увидит C::SOME_VALUE, он просто вставит литерал 27....

В C++11, как бы я мог написать функцию (или метод), которая принимает массив std::известного типа, но неизвестного размера? // made up example void mulArray(std::array<int, ?>& arr, const int multiplier) { for(auto& e : arr) { e *= multiplier; } } // lets imagine these being fu...

почему официальные примеры и учебники о библиотеке Qt не использовать смарт-указатели? Я вижу только new и delete для создания и уничтожения виджеты. Я искал обоснование, но я не мог его найти, и я не вижу его сам, за исключением того, что это по историческим причинам или обратной совместимости: не все хотят...

есть ли разница между этими двумя сегментами кода: void f() { thread_local vector<int> V; V.clear(); ... // use V as a temporary variable } и void f() { static thread_local vector<int> V; V.clear(); ... // use V as a temporary variable } Предыстория: первоначально у м...