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

Деструктор и наследование - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поменять первый элемент со вторым,третий с четвертым и т.д http://www.cyberforum.ru/cpp-beginners/thread800575.html
Дан массив из четного числа элементов.Поменять первый элемент со вторым,третий с четвертым и т.д. В чём ошибка? #include<stdio.h> #define n 6 int main() { int a; int i,temp; ...
C++ Получить 10 наиболее часто встречающихся слов из файла Дан символьный файл f, содержащий произвольный текст длиной более 50 слов. Слова в тексте разделены пробелами и знаками препинания. Получить 10 наиболее часто встречающихся слов. http://www.cyberforum.ru/cpp-beginners/thread800551.html
Подпрограмма (функция) C++
Здравствуйте,подскажите в чем проблема понять не могу,прога с виду примитивная и простая ,но значения не верные выдает. Задание звучит так: Даны по 3 стороны для трех треугольников. Найти медианы...
C++ Деление на натуральное число
Доброго времени суток! У меня, наверное, глупая проблема, но все таки хочется разобраться. Вот программа, где мне нужно найти число, взаимно обратное N. Но после компиляции С всегда равно 0, кроме...
C++ Вычисление одного из углов треугольника, когда заданы значения двух других углов http://www.cyberforum.ru/cpp-beginners/thread800534.html
Написать программу вычисления одного из углов треугольника, когда заданы значения двух других углов. Рекомендуемый вид экрана во время ра-боты. >Введите исходные данные: >Угол А (град) > ...
C++ Файлы. Получить названия, состоящие из двойных слов В текстовом файле хранятся названия городов через запятую. Получить названия, состоящие из двойных слов, например, Нью-Йорк, Новый Орлеан, результат отсортировать в алфавитном порядке. Прошу помочь... подробнее

Показать сообщение отдельно
anmartex
...
1708 / 1201 / 496
Регистрация: 12.02.2013
Сообщений: 1,978
06.03.2013, 09:35
Цитата Сообщение от UnknownSmith Посмотреть сообщение
в моем варианте, объект класса создается и записывается только тогда, когда пройдет проверку CheckIdf, наверно такую проверку надо в конструкторе делать?
Так а в чём проблема? Просто вызываете дефолтный конструктор предка, а потом делаете своё дело:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
StrLIdf::StrLIdf(char* cString): StrL()
{
   if (CheckIdf(cString))
   {
      // Копируем
   }
}
 
StrLIdf::StrLIdf(const StrLIdf& copy): StrL()
{
   if (CheckIdf(copy.c_str()))
   {
      // Копируем
   }
}
А вот, чтобы не дублировать код копирования, у предка нужно было реализовать метод (пусть даже защищённый) clone или copy с типом const char*.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.