Форум программистов, компьютерный форум CyberForum.ru

Инициализировать вектор unique_ptr - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Хорошо ли использовать унарный плюс вместо функции получения модуля? Если нет, то почему? http://www.cyberforum.ru/cpp-beginners/thread1201533.html
...
C++ Сформировать все возможные последовательности из n натуральных чисел, каждое из которых не провосходит m Доброго времени суток. Помогите пожалуйста с программой. Я то ли не понимаю ее смысл, то ли просто не могу написать, что в принципе одно и тоже... Сформируйте и выведите всевозможные последовательности, состоящие из n натуральных чисел, каждое из которых не превосходит m. http://www.cyberforum.ru/cpp-beginners/thread1201504.html
C++ Объяснить код
объясните пожалуйста подробно реализацию класса итератор, вызовы функций и конструкторов. в комментариях если можно template<class T> class list { struct node { T data; //Значение node *next; //Указатель на следующий элемент }; node *head; //Указатель на фиктивный элемент node *tile; //Указатель на конечный элемент
C++ Задана последовательность N вещественных чисел. Вычислить значение выражения
Задана последовательность N вещественных чисел. Вычислить значение выражения
C++ Уточнение о геттере в классе Строка http://www.cyberforum.ru/cpp-beginners/thread1201469.html
Подскажите, пожалуйста, как правильно должен быть реализован такой геттер ? class String { private: char* str; int length; ************************************* char* GetStr() const
C++ Как в моем коде сделать так, что бы круг рисовался при нажатии пробела? #include <QApplication> #include <QCursor> #include <unistd.h> #include <QPoint> #include <math.h> int main(int argc, char *argv) { QPoint p; QApplication a(argc, argv); подробнее

Показать сообщение отдельно
Renji
1619 / 1067 / 259
Регистрация: 05.06.2014
Сообщений: 3,152
06.06.2014, 23:38     Инициализировать вектор unique_ptr
Как инициализировать вектор unique_ptr?
C++
1
2
3
4
5
std::unique_ptr<int> a(nullptr);
std::unique_ptr<int> b(nullptr);
std::vector<std::unique_ptr<int>>my_vector;
my_vector.push_back(std::move(a));
my_vector.push_back(std::move(b));
Работает, но некрасиво.

C++
1
std::vector<std::unique_ptr<int>>my_vector{std::unique_ptr<int>(nullptr),std::unique_ptr<int>(nullptr)};
Красиво, но не работает. Ругается что "use of deleted function 'std::unique_ptr<_Tp, _Dp>::unique_ptr(const std::unique_ptr<_Tp, _Dp>&) [with _Tp = int; _Dp = std::default_delete<int>; std::unique_ptr<_Tp, _Dp> = std::unique_ptr<int>]'".

C++
1
2
3
4
5
6
7
8
struct unique_ptr_vector:std::vector<std::unique_ptr<int>>
{
    unique_ptr_vector(std::initializer_list<std::unique_ptr<int>> arg_list)
    {
        for(auto&element:arg_list)
            push_back(std::move(element));
    }
};
Все равно не работает. А можно сделать чтоб и красиво, и работало?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru