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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Whiteha
Программист
33 / 33 / 4
Регистрация: 08.07.2011
Сообщений: 190
Записей в блоге: 1
#1

Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е - C++

27.02.2012, 17:35. Просмотров 951. Ответов 5
Метки нет (Все метки)

Ситуация:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <vector>
class bar
{
public:
    bar();
    bar(int);
    bar(int, int);
    //<...>
};
//<...>
int main()
{
    std::vector<bar> bvec;
    bvec.push_back(/*...*/);  // Существует ли здесь способ вызвать bar(int, int)?
//<...>
}
Насколько я помню - нельзя, но вдруг как-то всё-таки можно...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2012, 17:35     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е
Посмотрите здесь:

vector выдает странные строки при использовании push_back - C++
Вот что я получаю *** Error in `./main': double free or corruption (!prev): 0x0000000001994a70 *** ======= Backtrace: ========= ...

При использовании push_back для vector-а, все предыдущие элементы перезаписываются - C++
Доброго времени суток,хочу поместить в вектор пути к файлам в определенной директории. Но когда отлажываю программу то вижу что все...

Меняют ли элементы в vector свои адреса при вызове метода push_back? - C++
Допустим я определил вектор и указатель на один из его элементов: vector&lt; int &gt; v( 10 ); int* p = &amp;(v); Затем использую push_back ...

Ошибка при вызове конструктора с параметрами - C++
подскажите, почему при вызове конструктора с параметрами выдает ошибку сегментации #include&lt;math.h&gt; #include&lt;stdio.h&gt; ...

Vector . push_back - C++
Доброго времени суток! Помогите пожалуйста поправить код!! #include &lt;vector&gt; #include &lt;iostream&gt; using namespace std; ...

Ошибка push_back() в vector - C++
Доброго времени суток. Сразу код : #include &quot;stdafx.h&quot; #include &quot;expat.h&quot; #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,363
27.02.2012, 17:40     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е #2
C++
1
2
3
4
5
6
int main()
{
    // .......
    bvec.push_back( bar(3, 2) );
    // .......
}
Whiteha
Программист
33 / 33 / 4
Регистрация: 08.07.2011
Сообщений: 190
Записей в блоге: 1
27.02.2012, 17:45  [ТС]     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е #3
Точно, аригато.
igorrr37
1644 / 1272 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
27.02.2012, 19:43     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е #4
emplace_back saves the extra copy or move operation required when using push_back
C++
1
bvec.emplace_back(3, 2);
Whiteha
Программист
33 / 33 / 4
Регистрация: 08.07.2011
Сообщений: 190
Записей в блоге: 1
27.02.2012, 20:45  [ТС]     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е #5
igorrr37, не могли бы вы немного рассказать про разницу между emplace_back() и push_back()?
К своему стыду я только сейчас о таком услышал...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2012, 20:51     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е
Еще ссылки по теме:

Подскажите, почему не видит переменные a и b? При использовании конструктора - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;locale&gt; using namespace std; class mas { private: double a,b,c,c1; ...

класс vector ошибка в push_back() - C++
#include &lt;iostream&gt; #include &lt;cstddef&gt; using namespace std; class vector { public: ...

Краш на моменте vector.push_back() - C++
Доброго времени суток. Начну с короткого объяснения кода: программа считывает файл строчка за строчкой ( в строке ровно 1 слово и 1...

Метод push_back() класса vector - C++
Пишу алгоритм динамического программирования, на каждой итерации в множество векторов возможно добавление вектора из этого же множества, но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
27.02.2012, 20:51     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е #6
Whiteha, он в C++11
http://en.cppreference.com/w/cpp/con...r/emplace_back
Yandex
Объявления
27.02.2012, 20:51     Вызов конструктора с несколькими параметрами при использовании push_back() в vector'е
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru