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

new и delete - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка в решении задачи "Судоку" (acmp) http://www.cyberforum.ru/cpp-beginners/thread923403.html
Здравствуйте. Судоку размера n называется квадрат со стороной n2, разделенный на n2 средних квадратов со стороной n, каждый из которых разделен на n2 маленьких квадратов. В каждом маленьком квадрате...
C++ Сравнить два int числа расположенных в char* строке Всем првиет. Имею проблему связанную с быстродействием. Нужно сравнить 2 строки на больше/меньше/равно. Каждый символ строки - число. строка строго 7 символов, т.е. 7 чисел. При приведении к int... http://www.cyberforum.ru/cpp-beginners/thread923400.html
C++ Неправельно работает конструктор(наверно)
Вот класс и вот конструктор думаю знающие люди разберутся я создаю 1 элемент класса точнее указатель first на элемент который будет головным элементом динамического списка... если запустите программу...
Перевести с QBasic на С++ C++
Добрый день.Имеется рабочий код на QBasic,хочу переписать его на C++.Пока не получается,требуется ваша помощь. CLS INPUT "ширина общ", x INPUT "шир1", a INPUT "шир2 ", b INPUT "шир3 ", c...
C++ Кольцевой буфер http://www.cyberforum.ru/cpp-beginners/thread923380.html
Здравствуйте, уважаемые пользователи. Мне поставили задачу, которую я один решить не могу и поэтому обращаюсь за помощью к вам. Итак, у нас есть файл и мне нужно отфильтровать его. Но он просто...
C++ Перемещение содержимого из одного байта в другой байт Здравствуйте все. Есть char A=3; char B=0; Как переместить физическое содержание битов из байта A в байт В, чтобы стало A=0 B=3; подробнее

Показать сообщение отдельно
Kuzia domovenok
1961 / 1814 / 144
Регистрация: 25.03.2012
Сообщений: 6,290
Записей в блоге: 1
15.07.2013, 20:27
Цитата Сообщение от Tulosba Посмотреть сообщение
деструктор в любом случае должен делать очистку, опираясь на всё множество конструкторов (ведь объект может быть создан любым конструктором), а не на какой-то один из них. Иначе уже косяк будет.
Да будет! Но ИМХО это проблема не столько множества конструкторов, сколько логичного разбиения на классы. Т.е. каждый класс должен выполнять только одну задачу и его деструктор не должен гадать, какую из задач зачистить.
Если не понятно, то вспомню один увиденный здесь на форуме пример "класса строки"
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class MyStr{
private:
  std::string A;
  char* B;
public:
//2 разных конструктора инициализируют ЛИБО А ЛИБО B
//причём один из них по-умолчанию
  MyStr():A("Hello"){};//B =???
  MyStr(char* arg){
     B=new char[strlen(arg)+1];
     strcpy(B, arg);
  }
  ~MyStr(){delete[] B;}//Если объект создан констр-м по-умолчалию, то ошибка!
};
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru