В настоящее время я использую три разные функции для возврата числового значения (одна возвращает double
, две другие возвращают long
):
int main(void)
{
// lots of code
dRate = funcGetInterestRate();
lMonths = funcGetTerm();
lPrincipal = funcGetPrincipal();
// lots of code
return 0;
}
Код трех функций составляет около 90%то же самое, поэтому я хотел бы объединить в 1 функцию.Я хочу передать флаг значения одной функции примерно так:
- , если «1» пройдено, определить процентную ставку, вернуть
double
- , если «2» прошло, определить срок кредита, вернуть
long
- , если «3» прошло, определить основную сумму кредита, вернуть
long
Я хочу вернуть только 1 значениеиз функции, когда она вызывается, но значение, которое я хочу вернуть, может быть либо double
, либо long
.Я хочу сделать что-то вроде этого:
void funcFunction(value passed to determine either long or double)
{
// lots of code
if (foo)
return double value;
else
return long value;
}
Есть ли простой способ сделать это?