C++怎么知道函数的类型
时间: 2023-10-09 14:15:28 浏览: 43
在C语言中,函数的类型由其返回值类型决定。因此,可以通过查看函数的返回值类型来确定其类型。例如:
```
int add(int a, int b) {
return a + b;
}
```
此函数的类型为int,因为它返回一个整数值。如果函数返回一个浮点数,则其类型为float或double。如果函数不返回任何值,则其类型为void。
相关问题
c++函数类型void
在C++中,`void`是一种函数类型,表示该函数没有返回值。这意味着,当函数执行完毕后,不会返回任何值。例如,下面这个函数就是一个返回类型为`void`的函数:
```
void printHello() {
std::cout << "Hello, world!" << std::endl;
}
```
当我们调用这个函数时,它会打印出"Hello, world!",但不会返回任何值。另外,`void`也可以用作函数参数类型,表示该函数不接受任何参数。例如:
```
void doSomething() {
// do something here
}
```
C++如何打印函数类型
要打印函数类型,您可以使用C++11中的decltype关键字。例如,假设我们有一个函数foo:
```
int foo(double x, int y) {
return x + y;
}
```
要打印foo的函数类型,您可以编写以下代码:
```
#include <iostream>
using namespace std;
int foo(double x, int y) {
return x + y;
}
int main() {
decltype(foo) *p = foo; //声明一个指向foo函数的指针
cout << typeid(decltype(foo)).name() << endl; //打印foo的函数类型
return 0;
}
```
其中,typeid(decltype(foo)).name()将返回一个字符串,表示foo的函数类型。在本例中,输出结果可能是:
```
FiidE
```
这个字符串可能不太直观,但它确实是foo的函数类型。