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

Опишите безопасное ослабление правил для типов аргументов замещаемых функций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подскажите где ошибка http://www.cyberforum.ru/cpp-beginners/thread846052.html
Выдаёт ошибку при компиляции #include <fstream> #include <vector> #include <iostream> using namespace std; class Toy { public: int Price, MinAge, MaxAge; char * Name;
C++ Дан текст, найти количество слов и количество слов, у которых первый и последний символ совпадают Помогите пожалуйста, выполнить задание. Дан текст из N символов. Группы символов, расположенные между пробелами и не содержащие пробелов внутри себя, называем словами. Найти: количесвто слов... http://www.cyberforum.ru/cpp-beginners/thread846049.html
C++ Обход матрицы по 0 с заданного элемента
Дана квадратная матрица, состоящая из 0 и 1...делается обход начинаю с какого то элемента... пробегается по 0, например вправо, если встречается 1, то мы меняем маршрут, вниз или вверх, если опять...
Задача на рекурсивный перебор C++
В выражении ((((1?2)?3)?4)?5)?6 . Нужно заменить знаки вопроса на знаки +-*/ чтобы в итоге получилось 35. Ну например: 1+2+3*4+5+6=35 За ранее спасибо, форумчане. Добавлено через 10 часов 25...
C++ Сформировать массив со значениями в диапазоне [-6.5*m; 2.5*m], m>5.5 вводится с клавиатуры http://www.cyberforum.ru/cpp-beginners/thread846001.html
День добрый, подскажите нубу как реализовать можно данное условие "Значения элементов массивов формируются в диапазоне , где вещественное значение m>5.5 вводится с клавиатуры." Интересует момент как...
C++ Выделение памяти под переменную в структуре Например есть структура struct StrDL { char Str; char Simv; }; и как выделить память под Str ? Типа этого например char *Str=(char*)malloc(1); Добавлено через 9 минут подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
23.04.2013, 12:37
ninja2, Примерно так, да.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
 
class A
{
public:
   virtual ~A() {}
   virtual A* clone() { return new A(*this); }
   virtual void print() { std::cout << "A" << std::endl; }
   virtual void release(A* ptr) { std::cout << "A::release" << std::endl; }
};
 
class B : public A
{
public:
   virtual B* clone() { return new B(*this); }
   virtual void print() { std::cout << "B" << std::endl; }
   virtual void release(B* ptr) { std::cout << "B::release" << std::endl; }
};
 
int main()
{
   A* p = new B();
   A* p2 = p->clone();
   p2->print();
   B b;
   p2->release(&b);
   delete p;
   delete p2;
}
В первом случае - с виртуальностью все ок.
Во втором случае - это две разные функции. release в производном классе не перегружает release базового.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru