Мне так плохо, что я задал этот вопрос, я знаю ответ, но я просто полностью закрываю его.C++ Значения по умолчанию
Что такое моя программа, это простая программа, которая отображает урон. Все, что мне нужно - это называть мои классы врагом и боссом с помощью функции атаки. Таким образом, в основном enemy.Attack()
или вы можете позвонить так: enemy.Attack(30)
и иметь внешний вид.
Вот что должно произойти:
enemy.Attack()
Выход: 10
enemy.Attack(30)
Выход: 30
Каждый раз, когда я пытаюсь пустую версию кронштейна, я получаю ошибку «функция не принимает 0 аргументов "
Enemy.h
class Enemy
{
public:
Enemy();
void Attack();
private:
int m_Damage;
};
Enemy.cpp
#include <iostream>
#include "enemy.h"
Enemy::Enemy() : m_Damage(10)
{}
void Enemy::Attack(int damage)
{
m_Damage = damage;
std::cout << "Damage: " << m_Damage << std::endl;
}
'void Attack (int damage = 10)' в вашей декларации. Реализация остается как есть. – WhozCraig
@WhozCraig: Пожалуйста, напишите, что в ответе, поэтому вопрос появляется как «ответил». Я думаю, что даже одной линии хватит! – yzt
Это действительно было бы, это исправлено полностью. Я люблю тебя прямо сейчас, и ты тоже сделал меня лицом. –