std::sqrt()
is of type std::complex<T>(const std::complex<T>&)
. Why can't I store it in this std::function
? The error I get is:
error: conversion from ‘’ to non-scalar type ‘std::function(const std::complex&)>’ requested
#include <complex>
#include <functional>
#include <iostream>
int main(){
using Complex = std::complex<double>;
std::function<Complex(const Complex&)> f = std::sqrt;
std::cout << "sqrt(4): " << f(std::complex<double>(4,0)) << "\n";
return 0;
}
Aucun commentaire:
Enregistrer un commentaire