Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
NikitoZZZ
4 / 4 / 1
Регистрация: 28.09.2013
Сообщений: 152
#1

Встроенная функция вектора из векторного класса - C++

12.10.2015, 23:30. Просмотров 241. Ответов 4
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
template <typename TypeContainer, typename Type, typename Policy> class Container {
public:
    ...
    TypeContainer GetPointer();
private:
    TypeContainer data;
};
C++
1
2
3
4
5
6
7
8
9
10
11
int main(int, char **)
{
        Container <std::vector<double>, double, PolicyVectorOne> vec5(0, 5);
 
    double *ar_ptr5 = new double[5];
    (vec5.GetPointer()).assign(&ar_ptr5[0], &ar_ptr5[4]);
    std::cout << vec5 << std::endl;
    delete[] ar_ptr5;
 
        return 0;
}
Если я сделаю поле data пабликом и напишу vec5.data.assign(&ar_ptr5[0], &ar_ptr5[4]), то все работает как нужно. Но с помощью функции не происходит копирование из массива в вектор.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2015, 23:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Встроенная функция вектора из векторного класса (C++):

Написать функцию для класса, возращающую данный из вектора обьектов класса по итератору вектора - C++
День=добрый как написать функцию для класса возращающую данный из вектора обьектов класса по итератору вектора?? стока запроса: ...

присвоение значения элементу векторного класса - C++
Написал я класс для массива (значений функции на отрезке): class DoubleArray { public: .... double operator (int index); ...

Почему встроенная функция вызывает конструктор копирования? - C++
Почему встроенная функция вызывает конструктор копирования или всегда ли встроенная функция действительно встроеннаая? Но всё по порядку....

STL. Функция, которая будет искать элементы большее среднего арифметического вектора и удалять их из вектора - C++
у меня есть вектор, помогите пожалуйста дописать функцию, которая будет искать элементы большее среднего арифметического вектора и удалять...

Заполнение вектора класса внутри самого класса - C++
class A { private: int a; public: A() { a = 0; }; A get(vector &lt;A&gt;* vec)

Создать производный класс, в котором реализована функция умножения вектора на число и функция сложения двух векторов - C++
Write программу с использованием класса Вектор (не без помощи форумчанина), но необходимо создать производный класс, в котором реализована...

4
castaway
Эксперт С++
4920 / 3028 / 372
Регистрация: 10.11.2010
Сообщений: 11,085
Записей в блоге: 10
Завершенные тесты: 1
12.10.2015, 23:48 #2
Приведи простой пример.
0
NikitoZZZ
4 / 4 / 1
Регистрация: 28.09.2013
Сообщений: 152
12.10.2015, 23:57  [ТС] #3
Я привел пример в main того, как мне надо вызвать функцию.
C++
1
(vec5.GetPointer()).assign(&ar_ptr5[0], &ar_ptr5[4]);
vec5.GetPointer() должно меняться на data.
0
gray_fox
What a waste!
1531 / 1236 / 71
Регистрация: 21.04.2012
Сообщений: 2,600
Завершенные тесты: 3
13.10.2015, 00:14 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
NikitoZZZ, тогда возвращай ссылку, а не копию:
C++
1
2
 TypeContainer & GetPointer();
 TypeContainer const& GetPointer() const;
1
NikitoZZZ
4 / 4 / 1
Регистрация: 28.09.2013
Сообщений: 152
13.10.2015, 00:22  [ТС] #5
Спасибо.
0
13.10.2015, 00:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.10.2015, 00:22
Привет! Вот еще темы с ответами:

Как сделать, чтобы функция класса могла работать с обьектами другого класса - C++
есть класс к примеру class One и класс к примеру class Two нужно чтобы элемент функция класса One могла работать в обьектами класа...

Сам вопрос: почему функция-член одного класса не вызывается из функции-члена другого класса? - C++
//Щас всё объясню. Так, имеем два класса, в одном я определил функцию-член. Все конструкторы и прочее //опущены для уменьшения кода ...

Перегрузка операций: friend-функция или функция-член класса - C++
Здравствуйте, меня интересует вопрос, в чем разница при перегрузке операторов через operator и friend. Вот к примеру такой код. class...

Инициализация вектора класса - C++
Здравствуйте. Следующий код не работает: struct stRefName { AnsiString BranchName; AnsiString TableName; }; typedef...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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