Код: Выделить всё
#include
typedef double Fct(double);
struct Function {
Function(Fct f) {}
};
double expe(double x, int n) // sum of n terms for x
{
double sum = 0;
for (int i = 0; i < n; ++i) sum += pow(x, i);
return sum;
}
int main()
{
Function s1{ exp };
Function s2{ [](double x) { return cos(x); } };
for (int n = 0; n < 10; ++n)
Function s3{ [n](double x) { return expe(x,n); } };
}
Код серьезности Описание Состояние подавления строки файла проекта
Ошибка (активная) E0289 нет экземпляра конструктора «Function::Function» соответствует списку аргументов X15test X15test.cpp 21
Код серьезности Описание Состояние подавления строки файла проекта
Ошибка C2440 «инициализация»: невозможно преобразовать из «список инициализаторов» в «Функция» X15test X15test.cpp 21
Я пробовал компилировать с помощью C++ 14, 17 и 20, все с одинаковыми результатами. Я компилирую с помощью Visual Studio 2022.
Подробнее здесь: https://stackoverflow.com/questions/783 ... nt-compile