
С++создать класс лошадь с перегрузкой функции этого класса


Ответы на вопрос

Так, наш конь может кушать, он может кушать целое количество и кило еды, и не целое, функции возвращают значение переведенное в граммы.
#include <iostream>
using namespace std;
class horse {
public:
int eat(int kg) {
return kg * 1000;
}
double eat(double kg) {
return kg * 1000;
}
};
int main()
{
horse horse1;
cout << horse1.eat(5) << endl;
cout << horse1.eat(10.2);
return 0;
}



Конечно, вот пример класса "Лошадь" на C++ с перегрузкой функции:
cpp#include <iostream>
#include <string>
class Horse {
private:
std::string name;
int age;
public:
// Конструктор класса
Horse(std::string n, int a) : name(n), age(a) {}
// Перегрузка функции для вывода информации о лошади
void printInfo() {
std::cout << "Имя: " << name << ", Возраст: " << age << " лет" << std::endl;
}
// Перегрузка функции для вывода информации о лошади с дополнительными параметрами
void printInfo(std::string additionalInfo) {
std::cout << "Имя: " << name << ", Возраст: " << age << " лет, Дополнительная информация: " << additionalInfo << std::endl;
}
};
int main() {
Horse myHorse("Буран", 5);
myHorse.printInfo(); // Вызываем функцию без дополнительной информации
myHorse.printInfo("Лошадь сорта Арабская"); // Вызываем функцию с дополнительной информацией
return 0;
}
В этом примере класс "Horse" содержит две версии функции printInfo
, одна из которых принимает дополнительный параметр additionalInfo
. Это позволяет перегрузить функцию и вызывать ее с разными наборами параметров.



Конечно, вот пример класса "Лошадь" на C++ с перегрузкой функции:
cpp#include <iostream>
#include <string>
class Horse {
private:
std::string name;
int age;
public:
// Конструктор класса
Horse(const std::string& horseName, int horseAge) : name(horseName), age(horseAge) {}
// Функция для вывода информации о лошади
void displayInfo() {
std::cout << "Имя лошади: " << name << std::endl;
std::cout << "Возраст лошади: " << age << " лет" << std::endl;
}
// Перегрузка функции displayInfo для вывода дополнительной информации
void displayInfo(const std::string& additionalInfo) {
displayInfo(); // Вызываем базовую функцию displayInfo
std::cout << "Дополнительная информация: " << additionalInfo << std::endl;
}
};
int main() {
Horse myHorse("Буцефал", 7);
std::cout << "Базовая информация о лошади:" << std::endl;
myHorse.displayInfo();
std::cout << "\nИнформация о лошади с дополнительными данными:" << std::endl;
myHorse.displayInfo("Лошадь Буцефал была верным спутником Александра Македонского.");
return 0;
}
Этот код определяет класс "Horse" с двумя версиями функции displayInfo
. Первая версия выводит базовую информацию о лошади (имя и возраст), а вторая версия перегружает функцию и выводит дополнительную информацию.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili