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

Написать конструктор - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ написать программу для вычисления значений функции F(x) для х, изменяющегося в интервале от A до B с шагом DEL. http://www.cyberforum.ru/cpp-beginners/thread1092766.html
С использованием оператора цикла с предусловием написать программу для вычисления значений функции F(x) для х, изменяющегося в интервале от A до B с шагом DEL. F=a*x*x+b/c при x>1 и с!=0...
C++ Требуется найти наибольший общий делитель двух чисел Фибоначчи. ЗАДАЧА №384 Числа Фибоначчи - 3 (Время: 1 сек. Память: 16 Мб Сложность: 52%) Последовательностью Фибоначчи называется последовательность чисел F0 = 0, F1 = 1, … , Fk = Fk-1 + Fk-2 (k > 1).... http://www.cyberforum.ru/cpp-beginners/thread1092761.html
Собственные манипуляторы C++
Не компиллируется программа в DevC++. Написать программу с двумя своими манипуляторами. Один выводит сообщение, другой устанавливает шестнадцатеричный вывод и ширину поля 10. Программа выглядит вот...
C++ В массиве, все элементы которого различны, найти и удалить n наименьших элементов, «поджимая» массив к началу и сохраняя порядок следования C/C++
В массиве А(l), все элементы которого различны, найти и удалить n наименьших элементов, «поджимая» массив к началу и сохраняя порядок следования остальных элементов.
C++ Транспозиция двумерного массива http://www.cyberforum.ru/cpp-beginners/thread1092745.html
Мне надо поменять местами строку с столбцом,транспозиция!Помогите!
C++ Можно ли вывести картинку в консоли? Или же просто как вывести картинку на экран? подробнее

Показать сообщение отдельно
Stella
75 / 75 / 5
Регистрация: 26.02.2013
Сообщений: 224
12.02.2014, 01:38
Цитата Сообщение от Lers Посмотреть сообщение
т.е. вместо
C++
1
items[i] = new Disc;
можно же написать так, чтобы не вызывать каждый раз конструктор базового класса?
C++
1
items=new Disc*[col];
Ну в интерфейсе написано:
C++
1
Disc ** items;
В принципе может и логичней, что бы просто поместить в класс Collection просто массив дисков:
C++
1
Disc * items;
, но тогда, например при добавлении функции сортировки нужно будет в этой функции менять местами сами объекты (при условии наявности перегруженного = для Disc, т.е. копируются полностью все поля объектов):
C++
1
2
3
4
5
6
7
if(strcmp(item[i].getdiskname(), item[i+1].getdiskname())
{
Disc tmp;
tmp = item[i];
item[i] = item[i+1];
item[i+1] = tmp;
}
, а так можно работать с указателями (по идее быстрее):

C++
1
2
3
4
5
6
7
if(strcmp(item[i]->getdiskname(), item[i+1]->getdiskname())
{
Disc *tmp;
tmp = item[i];
item[i] = item[i+1];
item[i+1] = tmp;
}


Возможно, я ошибаюсь, и более знающие подскажут...

Цитата Сообщение от Lers Посмотреть сообщение
Вопрос, можно ли это объединить в одну строчку?
да, думаю ваше решение компактней
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru