При компиляции кода C ++ ниже я получаю следующее сообщение об ошибке: < /p>
»« Неверная новая экспрессия абстрактного класса типа 'trainerclass », потому что функция« виртуальная void trainerclass :: AddItems () »является чистым в рамках« TrainerClass ». Количество тренера (int nbrtainer = 2;). В этом примере должны быть созданы объекты «материал»: материал [0] и материал [1] (указатели на класс «TrainerClass»). Затем то, что находится внутри каждого объекта «материал», следует определить, указывая класс «Бэгклас» на объекты «материал». < /p>
Сложность здесь заключается в том, что класс «TrainerClass» включает в себя чистую виртуальную функцию, которая предотвращает инициализацию объектов класса, как обычно. < /p>
Какой правильный синтаксис для инициализации объектов, полученных из виртуального класса с использованием концепции динамического связывания? (Все объекты должны быть названы «материал [x]» с индексом) < /p>
#include
using namespace std;
#define Training // to declare the global variable
///Definition of class Pocket
class pocket
{
public:
double volume;
};
///Definition of virtual class TrainerClass
class TrainerClass
{
public:
pocket *Space;
virtual void AddItems()=0;
};
///Definition of derived class
class BagClass: public TrainerClass
{
public:
double mass;
BagClass(double m2)
{
mass=m2;
}
void AddItems()
{
cout
Подробнее здесь: https://stackoverflow.com/questions/405 ... tual-class
C ++ Какой правильный синтаксис при использовании динамического связывания и чистого виртуального класса? ⇐ C++
Программы на C++. Форум разработчиков
1748513686
Anonymous
При компиляции кода C ++ ниже я получаю следующее сообщение об ошибке: < /p>
»« Неверная новая экспрессия абстрактного класса типа 'trainerclass », потому что функция« виртуальная void trainerclass :: AddItems () »является чистым в рамках« TrainerClass ». Количество тренера (int nbrtainer = 2;). В этом примере должны быть созданы объекты «материал»: материал [0] и материал [1] (указатели на класс «TrainerClass»). Затем то, что находится внутри каждого объекта «материал», следует определить, указывая класс «Бэгклас» на объекты «материал». < /p>
Сложность здесь заключается в том, что класс «TrainerClass» включает в себя чистую виртуальную функцию, которая предотвращает инициализацию объектов класса, как обычно. < /p>
Какой правильный синтаксис для инициализации объектов, полученных из виртуального класса с использованием концепции динамического связывания? (Все объекты должны быть названы «материал [x]» с индексом) < /p>
#include
using namespace std;
#define Training // to declare the global variable
///Definition of class Pocket
class pocket
{
public:
double volume;
};
///Definition of virtual class TrainerClass
class TrainerClass
{
public:
pocket *Space;
virtual void AddItems()=0;
};
///Definition of derived class
class BagClass: public TrainerClass
{
public:
double mass;
BagClass(double m2)
{
mass=m2;
}
void AddItems()
{
cout
Подробнее здесь: [url]https://stackoverflow.com/questions/40558177/c-what-is-the-correct-syntax-when-using-dynamic-binding-and-pure-virtual-class[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия