Результаты поиска по запросу "c++11"
std :: async и копия объекта
Я экспериментировал сstd::async и в конечном итоге с кодом, который выглядит так: class obj { public: int val; obj(int a) : val(a) { cout << "new obj" << endl; } ~obj() { cout << "delete obj" << endl; } }; void foo(obj a) ...
Разница между MoveInsertable и CopyInsertable?
Может ли кто-нибудь дать более ясное объяснение этих двух терминов? Другими словами, простое объяснение с примером, пожалуйста. (от: cppreference.com) MoveInsertable: указывает, что значение типа может быть скопировано в неинициализированное ...
Проблемы с обёртыванием динамического массива shared_ptr <T []>
Я хотел заменить некоторые сырые указатели в моем классеstd::shared_ptr так что мне не нужно беспокоиться, когда я создаю копии этого класса. Но необработанные указатели указывают на динамический массив. Использование shared_ptr с динамическими ...
Вложенный лямбда-захват в C ++
У меня есть что-то вроде: // think of Synonym as a set/vector of values // the purpose of this function is to filter out elements from the 2 synonyms/sets, // that are not related (similar to SQL inner join) - modifier modifies vars ...
Как реализовать easy_bind (), который автоматически вставляет подразумеваемые заполнители?
Недавно я нашел этот изящный фрагмент в Интернете - он позволяет связывать, не передавая явные заполнители: template <typename ReturnType, typename... Args> std::function<ReturnType(Args...)> easy_bind(ReturnType(*MemPtr)(Args...)) { return [=]( ...
constexpr, массивы и инициализация
Есть ли в мире C ++ что-нибудь, что сделало бы возможным то, что я пытаюсь сделать? template < typename T , size_t Size > struct array { constexpr T buf[Size]; constexpr size_t size() const { return Size; } }; template < typename T , size_t Size ...
Какова категория значений строковых литералов?
Я почти уверен, что категория значений целочисленных, символьных, логических литералов и литералов с плавающей точкой является prvalue. Пользовательские литералы похожи на вызовы функций, поэтому их категория значений зависит от типа ...
Каков результат decltype («Hello»)?
Я получаю неожиданные результаты от всех компиляторов, на которых я пробовал следующее (GCC 4.7.2, GCC 4.8.0 beta, ICC 13.0.1, Clang 3.2, VC10): #include <type_traits> int main() { // This will fire static_assert( std::is_same<decltype("Hello"), ...
std :: condition_variable :: notify_one () вызывается несколько раз без переключения контекста
Сколько ожидающих потоков проснется в этом примере: 1-й поток: void wakeUp2Threads() { std::unique_lock<std::mutex> lock(condvar_mutex); condvar.notify_one(); condvar.notify_one(); }2-й поток: { std::unique_lock<std::mutex> ...
Получение «тип источника не полиморфный» при попытке использовать dynamic_cast
struct A {}; struct B : A {}; int main() { A* a = new B(); B* b = dynamic_cast<B*>(a); }дает: не может dynamic_cast 'a' (типа 'struct A *') набрать 'struct B *' (исходный тип не является полиморфным) ...