БОРЬБА С АРГУМЕНТОМ КОНСТРУКТОРА C ++
Итак, я только что пришел из TS / JS / Py и пытаюсь понять концепции C ++. Но я борюсь с использованием параметра конструктора класса FOR для объявления значения по умолчанию для аргумента. Вот код, который я пытаюсь запустить:
double Phythagorean_Hypotenuse (int& a, int& b ) {
return sqrt((a * a) + (b * b));
};
class Triangle {
public:
int a;
int b;
double c;
Triangle(int a_param, int b_param, double c_param = Phythagorean_Hypotenuse(a_param, b_param)) {
a = a_param;
b = b_param;
c = c_param;
}
};
и внутри основной функции
Triangle mytri_1(10, 20);
std::cout << mytri_1.a << std:endl;
Но когда я пытаюсь запустить этот код, IDE выдает мне некоторые ошибки как
[Error] 'a_param' was not declared in this scope
или
[Error] call to 'Triangle::Triangle(int, int, double)' uses the default argument for parameter 3, which is not yet defined
Так, пожалуйста, может кто-нибудь, кто может исправить это, ответить на вопрос?
Спасибо.