Eventuali duplicati:std :: asincrone con funzioni di overload
Considerare seguente C++ esempio
class A
{
public:
int foo(int a, int b);
int foo(int a, double b);
};
int main()
{
A a;
auto f = std::async(std::launch::async, &A::foo, &a, 2, 3.5);
}
Questo dà 'std :: asincrone': non può dedurre l'argomento template come argomento della funzione è ambiguo. Come posso risolvere questa ambiguità ??
funzione Quando sto usando l'expressionauto lambda 'f = std :: asincrona (std: : launch :: async, [& a] {a.foo (2, 3.5);}); int x = f.get(); 'non funziona. C'è qualche modo particolare di ottenere il valore? –
@AmithChinthaka 'return a.foo (2, 3.5);' –