指针重载函数
回答
根据您所包含的内容标题,有以下几点:
template<class T> complex<T> sin (const complex<T>&); // <complex>
template<class T> valarray<T> sin (const valarray<T>&); // <valarray>
float sin(float); // <cmath>
long double sin(long double); // <cmath>
正如你所看到的,有所涉及模板,尽管这实际上这里并不严格相关。
您只需告知编译器,[潜力]你想(可能只是出后两者的)过载:
std::thread((float(*)(float))&std::sin, 2.9);
如果你想避免C-投,适当的C++投是'static_cast' 。 –
@MatthieuM .:我不特别(这里完全是多余的;我该怎么办,意外抛弃了常量?),但是谢谢。 –
我更喜欢C++演员阵容,因为演员阵容更加明显,主观,我知道:) –
你可以
typedef double (*sind)(double);
std::thread((sind) std::sin,2.9);
你要投的功能指向右侧过载的类型:
std::thread((float(*)(float))std::sin, 2.9);
我更喜欢lambda解决方案。它读取比包含函数指针的任何东西都要干净得多。它也会比使用函数指针更快,但这通常不重要。
std::thread([](double x) { return std::sin(x); }, 2.9);
我认为它应该读'return std :: sin(x);' –
- 1. C++重载函数指针
- 2. 通过函数指针重载函数
- 3. 过载的指针重载函数
- 4. C++重载函数指针模糊
- 5. 模板函数指针重载
- 6. 函数重载在C++(常量指针)
- 7. 无法将重载的函数指针转换为成员函数指针?
- 8. 传递重载函数指针作为参数重载模板函数
- 9. MSVC指向模板参数中重载函数的指针
- 10. 分配重载函数函数指针作为默认值
- 11. 传递一个重载成员函数的函数指针?
- 12. 用于重载成员函数的成员函数指针
- 13. 促进C++重载的函数指针函数对象的
- 14. c函数指针反函数指针
- 15. 指针?指针函数?
- 16. 函数指针指向一个函数指针的函数
- 17. 基于指针与非指针类型如何重载一个成员函数
- 18. 重载运算符采用函数指针作为参数,如何取回函数指针的参数
- 19. 带共享指针参数歧义的函数重载
- 20. 函数指针
- 21. 函数指针
- 22. 函数指针
- 23. 函数指针
- 24. 函数指针?
- 25. 函数指针
- 26. 函数指针
- 27. 函数指针
- 28. 函数指针
- 29. 函数指针
- 30. 函数指针
看到http://stackoverflow.com/questions/1353757/how-do-i-refer-to-stdsinconst-valarraydouble – sehe