gpt4 book ai didi

c++ - 如果不能定义函数,那么在另一个函数的范围内声明函数的目的是什么

转载 作者:搜寻专家 更新时间:2023-10-31 01:29:48 24 4
gpt4 key购买 nike

如果一个函数不能定义,那么在另一个函数的范围内声明它的目的是什么?

例如:

int f(int a)
{
return a;
}
void g()
{
void f(char c);
}

我可以在 g() 范围内声明 void f(char c); 但不能定义它。因此这个声明在 g() 的范围内结束。以这种看似没有用的方式声明函数的目的是什么?

最佳答案

它允许 g 调用该函数,为了清楚起见,我已将其重命名为 h:

int f(int a)
{
return a;
}
void g()
{
void h(int c);
h( 100 );
}

void h(int c)
{
}

int main()
{
g();
return 0;
}

但没有声明函数对其他人可用,这不会编译:

int f(int a)
{
return a;
}
void g()
{
void h(int c);
h( 100 );
}

void i()
{
h(10);
}

void h(int c)
{
}

int main()
{
g();
return 0;
}

关于c++ - 如果不能定义函数,那么在另一个函数的范围内声明函数的目的是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49214258/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com