Я новичок в C++ и начал работать над вызовом виртуальных методов из базовых классов и использованием указателей для их разыменования. Вот простая программа, которая имеет базовый класс млекопитающее и множество производных классов, таких как собака и кошка, и запрашивает у пользователя соответствующий номер для вызова виртуального метода, который выводит либо «гав», либо «мяу» в зависимости от выбранного класса. Я следовал всему этому коду из опубликованной книги и до сих пор не могу получить желаемый результат.
Я новичок в C++ и начал работать над вызовом виртуальных методов из базовых классов и использованием указателей для их разыменования. Вот простая программа, которая имеет базовый класс млекопитающее и множество производных классов, таких как собака и кошка, и запрашивает у пользователя соответствующий номер для вызова виртуального метода, который выводит либо «гав», либо «мяу» в зависимости от выбранного класса. Я следовал всему этому коду из опубликованной книги и до сих пор не могу получить желаемый результат. [code]#include using namespace std; enum BOOL {True, False};
Я новичок в C++ и начал работать над вызовом виртуальных методов из базовых классов и использованием указателей для их разыменования. Вот простая программа, которая имеет базовый класс млекопитающее и множество производных классов, таких как собака...
Я новичок в C++ и начал работать над вызовом виртуальных методов из базовых классов и использованием указателей для их разыменования. Вот простая программа, которая имеет базовый класс млекопитающее и множество производных классов, таких как собака...
Согласно ISO C++, разыменование нулевого указателя является неопределённым поведением. Мне интересно, почему? Почему стандарт решил объявить это поведение неопределённым? Каково обоснование этого решения? Зависимость от компилятора? Не кажется,...