C/C++ 中的 extern关键词等问题 请大家多多帮忙!

发布于 2021-11-30 00:46:48 字数 1156 浏览 790 评论 11

在C/C++中如果一个源文件中要使用另一个源文件中的函数或数据我们只需在该源文件中使用extern关键词便可使用,但是如果是以下的情况该如何解决。

       比如:有inti.cpp    a.cpp    b.cpp  c.cpp等多个源文件,a.cpp    b.cpp  c.cpp......源文件中都有一个函数 void show(),函数的名字 以及参数都完全一样。现在我想在init.cpp 这个源文件中调用指定的另一个源文件中的show()函数(例如调用a.cpp中的show()函数)这时我该如何实现。

        或者说C/C++不支持这种(应该不会)。

        *注:大家也可以以C的方式给我答复                

                                                                                                    谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

各自安好 2021-11-30 06:32:18

namespace 例子如下

namespace a{
void show()
{
  std::cout<<"hello world"<<std::endl;
}
}
///
namespace b{
void show()
{
  std::cout<<"hello world"<<std::endl;
}
}
//////////invoke
a::show();
b::show();

屌丝范 2021-11-30 06:32:17

能给我个范例代码

深巷少女 2021-11-30 06:32:17

请问能给个代码范例吗?

空城仅有旧梦在 2021-11-30 06:32:17

把相关内容拿出来瞧一瞧就明白了

 

酒几许 2021-11-30 06:32:12

把所有a.cpp b.cpp c.cpp里的同名函数都加上static,限制一下只在本文件可见。

定义一个函数指针,指向你想要的函数(例如a.cpp里的), Init.cpp里就用这个函数指针得了。

傾城如夢未必闌珊 2021-11-30 06:30:18

a.cpp    b.cpp  c.cpp......源文件中都有一个函数 void show(),函数的名字 以及参数都完全一样。

直接编译失败

梅窗月明清似水 2021-11-30 06:29:42

请问如何使用namespace,能给我点代码范例吗? 自己学的不是太好,但又很想解决这个问题。

坏尐絯 2021-11-30 06:28:58

使用namespace吧

飘然心甜 2021-11-30 06:28:24

假如说我要调用的show()函数是在C源文件中的,C++是可以直接使用C源代码的,而C是没有class类型 的那么又该怎么办。

好听的两个字的网名 2021-11-30 06:10:07

c可以用结构体内定义函数指针实现多态

好听的两个字的网名 2021-11-30 05:22:53

c++ 多态。 定义一个包含show的虚类,然后在每个cpp文件中定义子类来继承它并实现show函数,使用时定义虚类指针指向具体类对象,调用show即可

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文