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

Дополнить класс динамическим массивом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Исходники GDI http://www.cyberforum.ru/cpp-beginners/thread781029.html
Может кто поделиться какими-нибудь исходниками связаными с использованием графики? А то не знаю как подступиться. В книжках есть куски кода, но даже не знаю как их вставить и куда. При компиляции постоянно появляются ошибки. Посему буду рад если поделится кто-нибудь готовым проектом.
C++ тестовая программа не компилируется = "error: 'mainfunc' was not declared in this scope|" Решил ознакомится с Си, пишу простой код: #include <iostream> #include <windows.h> #include <stdio.h> using namespace std; int main() { http://www.cyberforum.ru/cpp-beginners/thread781018.html
Ошибка C++
Проект в котором базовый абстрактный класс Colection, и два производных Vector и Steck в хедоры которых подключаем базовый. Как исправить ошибку? фрагменты из программы #include "Steck.h" // включаем Colection #include "Vector.h" // еще раз включаем (ошибка) #include "Colection.h" // и еще раз (ошибка) #include <iostream> int main()
C++ Доработать программу ( мизер )
Помогите доработать программу! С меню работает не правильно: // #include "StdAfx.h" #include <cstdio> #include <windows.h> #include <cmath>
C++ удаления узла в двухсвязном списке http://www.cyberforum.ru/cpp-beginners/thread781011.html
Привет всем! такая проблема , не получается корректно удалить узел из двухвязного списка. как решить эту проблему ? #include <iostream> #include <stdlib.h> using namespace std; struct Node { int data; Node* next;
C++ Лимит памяти для решений задач Чем руководствуются авторы задач, устанавливая лимт памяти для программ-решений? Например, простая задча. Её решение, сохранённое в текстовом режиме (блокнот) занимает на диске 4 килобайта. #include <iostream> using namespace std; int main() { int n; cin >> n; cout << n/10 << " " << n%10 << endl; подробнее

Показать сообщение отдельно
vxg
Модератор
3068 / 1870 / 196
Регистрация: 13.01.2012
Сообщений: 7,123
07.02.2013, 11:48     Дополнить класс динамическим массивом
Цитата Сообщение от QWERY_2012 Посмотреть сообщение
- номер элементов, который может быть сохранён в "sequence" должен лимитироваться только количеством памяти поступной в свободном хранении (free store). При добавлении нового элемента размер массива данных должен автоматически увеличиваться.
- Необходимо определить: copy конструктор, assignment operator и destructor.
- Конструктор должен иметь default аргумент, который позволит пользователю установить первоначальную вместимость класса "sequence".
- Необходима функция - resize -которая позволит пользователю четко установить ёмкость "sequence".
1 измените функцию добавления элемента: если свободных мест нет - выделяйте новый кусок памяти имеющий размер на некое количество элементов больше чем текущий, копируйте туда содержимое текущего куска, удаляйте текущий кусок, изменяйте указатель на текущий кусок и размер на новые, добавляйте элемент
2 у вас вообще конструкторы пока не очень то и определены - не ясно откуда возьмется data - под него надо выделить память. в пустом конструкторе обнулить data. в конструкторе с параметром выделить кусок вмещающий указанное в качестве параметра кол-во элементов. в конструкторе копирования - выделить кусок размером с блок данных в копируемом объекте и скопировать туда data, заполнить остальные поля взяв их значение из копируемого объекта
3 во время присваивания - если принимающий кусок больше чем передаваемый - очищать его (сбрасывая счетчики) и копировать в него содержимое передаваемого куска, если меньше - удалять, выделять память размером с передаваемый кусок и копировать его
4 в деструкторе освобождать выделенную память
5 default аргумент у вас есть - DEFAULT_CAPACITY
6 что значит четко установить емкость? поджать data до фактического размера? тогда если data имеет хвост выделяйте память четкого размера, копируйте туда заполненную часть data, освобождайте data, обновляйте указатель на data новым куском, обновляйте другие поля
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru