我最近注意到你可以做类似的事情
void foo(){ }
//...
std::cout<<foo<<std::endl;
无论传递的函数如何,这都会打印出“1”。
现在我很好奇:这到底是做什么的?
最佳答案
foo
衰减为函数指针,然后将其转换为值为 true 的 bool 值(因为函数指针不为空),打印为“1",因为 bool 值默认打印为数字。
试试这个:
std::cout << std::boolalpha << foo << std::endl;
关于c++ - std::cout 函数作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17572448/