1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
||||||
1 | ||||||
Свой класс вектор. Как расширить динамический массив06.12.2015, 14:16. Показов 6918. Ответов 19
Метки нет Все метки)
(krivoy cod
мое задание : сделать свой класс вектор сделать его динамическим (если надо - расширить, если надо - ужать) что бы он умел добавлять в конец и в начало что бы можно было удалить элемент со сдвигом. так же и добавлять перегрузить операторы сделать его шаблонным ------ В принципе, я знаю как это сделать, но вот у меня загвоздка : Я хочу сделать функцию, которая добавляет элемент в конец массива. Все ок, я массив расширил, но элементы старые - удались, вместо них теперь рандомная память Как мне перенести все элементы из начального массива ? Сори за кривой код, я тольк учусь
0
|
|
06.12.2015, 14:16 | |
Ответы с готовыми решениями:
19
Расширить динамический массив Класс Вектор, поля класса: n- количество элементов массива, a - имя массива целых чисел(массив динамический) Свой класс Динамический Список |
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
||||||
06.12.2015, 15:08 | 2 | |||||
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
|
06.12.2015, 15:17 [ТС] | 3 |
Я с этим *this вообще ничего не понял
Только я не понял код Что это и куда ? Я же просто поменял указатель на новую память Мне даже его засунуть некуда
0
|
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
|
|
06.12.2015, 15:40 | 4 |
Большая коллекция решенных задач
там есть некий вектор с итераторами. может то, что вы и хотите. если нет - то на форуме полно других вариантов самодельных векторов. поищите.
0
|
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
|
06.12.2015, 16:43 | 5 |
Метод - такая функция объявленная внутри класса. Вызывается конструкцией вида object->method(). При этом method неявно получает указатель this ведущий на object.
Ну так не надо его менять. Нужно: 1) Создать новый массив. 2) Скопировать в него старый. 3) Снести старый массив. 4) Записать указатель на новый массив, в указатель на старый массив. А если вам там в вектор только числа складывать, то выучить malloc, realloc и free и вся недолга.
0
|
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
||||||
06.12.2015, 17:09 | 6 | |||||
Вот такой вариант например:
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
|
06.12.2015, 20:35 [ТС] | 7 |
я это прекрасно понимаю
я не пойму, как это реализовать точнее пункт - как скопировать
0
|
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
|
06.12.2015, 20:44 | 8 |
0
|
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
06.12.2015, 20:57 | 9 |
Renji, в самом простом всегда найдут непонимание)
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
||||||
06.12.2015, 21:06 [ТС] | 10 | |||||
это я понял
я не понимаю, как собрать это все в кучу
хотя я написал У меня кашаааааа
0
|
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
06.12.2015, 21:09 | 11 |
jazzspell, Так ты методы класса реализуешь или функции?
0
|
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
||||||
06.12.2015, 21:09 | 12 | |||||
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
|
06.12.2015, 21:12 [ТС] | 13 |
Полный бред, даже проверять не буду
Функции, не методы И что лучше и чем ? Может, переделаю
0
|
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
|
06.12.2015, 21:14 | 14 |
Если месье лучше советчиков знает что бред, что нет, может он тогда не будет лезть сюда за советами?
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
|
06.12.2015, 21:16 [ТС] | 15 |
0
|
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
06.12.2015, 21:16 | 16 |
jazzspell, Вообще-то, там описано все верно.
Ты делаешь класс, а значит методы внутри класса... какие к черту функции?
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
||||||
06.12.2015, 21:22 [ТС] | 17 | |||||
0
|
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
06.12.2015, 21:25 | 18 |
jazzspell, а, вот что за ужас ты творишь)
А чем тебе свои методы не угодили?) Дружбу навел тут)
0
|
1 / 1 / 0
Регистрация: 12.08.2015
Сообщений: 42
|
|
06.12.2015, 21:33 [ТС] | 19 |
Если честно - то я не понял немножко, как их реализовывать
Да и как-то к функции проще обращаться ) Вот так все работает, кроме того, как присвоить новое число
0
|
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|||||||||||
06.12.2015, 21:54 | 20 | ||||||||||
![]() Решение
jazzspell, Держи:
Header.h
1
|
06.12.2015, 21:54 | |
Помогаю со студенческими работами здесь
20
Создать динамический класс Book, содержащий динамический массив Authors Создать динамический класс Book, содержащей динамический массив Authors Как расширить том в diskmgmt без преобразования в динамический диск? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |