c++11
это struct Example { int a, b; Example(int mA, int mB) : a{mA}, b{mB} { } Example(const Example& mE) : a{mE.a}, b{mE.b} { } Example(Example&& mE) : a{move(mE.a)}, b{move(mE.b)} { } Example& operator=(const Example& mE) { a = mE.a; b = mE.b; retur...
C++0x добавляет hash<...>(...). Я не смог найти функцию hash_combine, хотя, как представлено в boost. Каков самый чистый способ реализовать что-то подобное? Возможно, используя C++0x xor_combine?...
Я хотел бы включить поддержку C++0x в GCC с -std=c++0x. Мне абсолютно не обязательно нужен какой-либо из в настоящее время поддерживаются функции C++11 в GCC 4.5 (и вскоре 4.6), но я хотел бы начать привыкать к ним. Например, в нескольких местах, где я использую итераторы,auto тип было бы полезно. но опять ж...
в C++11 the nullptr ключевое слово было добавлено как более безопасный тип константа нулевого указателя, так как предыдущее общее определение NULL а 0 имеет некоторые проблемы. почему Комитет по стандартам решил не вызывать новую константу нулевого указателя NULL, или заявить, что NULL должно быть #defineд n...
в C++11 вы можете использовать диапазон на основе for, который действует как foreach других языках. Он работает даже с простыми массивами в C: int numbers[] = { 1, 2, 3, 4, 5 }; for (int& n : numbers) { n *= 2; } как он знает, когда остановиться? Работает ли он только со статическими массивами, кот...
Привет я хотел бы понять, почему следующий код, который делает разбивает строку с помощью регулярных выражений #include<regex> #include<vector> #include<string> std::vector<std::string> split(const std::string &s){ static const std::regex rsplit(" +"); auto rit = std::sre...
можно ли записать в заголовочный файл следующее: inline void f () { std::function<void ()> func = [] {}; } или class C { std::function<void ()> func = [] {}; C () {} }; Я думаю, что в каждом исходном файле тип лямбды может быть разным, и поэтому содержащийся тип в std::function (target_typeр...
В C++11 emplace_back() обычно предпочтительнее (с точки зрения эффективности)push_back() как это позволяет на месте строительства, но это все еще имеет место при использовании push_back(std::move()) С уже построенным объектом? например,emplace_back() все-таки предпочитал в таких случаях, как следующие? st...
Я смотрел вторую часть выступление Уолтера Брауна CppCon2014 по шаблонному метапрограммированию, во время которого он обсуждал использование своего романа void_t<> строительство. Во время своего выступления Питер Соммерлад задал ему вопрос, который я не совсем понял. (ссылка идет непосредственно на вопр...