[英]Include specific function from a header file into the code in c++
在python中,可以从不同的模块导入特定的功能集,而不是导入整个文件
例如:
而不是使用import math
和使用print math.sqrt(4)
,直接导入函数:
from math import sqrt
print sqrt(4)
它工作得很好。
在C
和C++
,必须包含整个头文件才能使用它提供的一个函数。 例如,在C ++中
#include<iostream>
#include<cmath>
int main(){
cout<<sqrt(4);
return 0;
}
C
代码也类似(不相同)。
有可能就像在python的情况下一样,只能将一个函数从头文件包含到他们的程序中吗?
例如:只包括来自cmath
的sqrt()
函数?
可以吗?
不,这是不可能的。 C ++缺少一个真正的模块系统,所以我们留下了预处理器包含。 添加新类型模块系统的提议没有进入C ++ 11。 请参阅C ++模块 - 为什么它们从C ++ 0x中删除? 他们以后会回来吗? 有关该提案的更多信息。
如果这是关于您自己的库,您唯一的机会是将库拆分为较小的独立库。 如果图书馆不是你的和/或你不能改变它,你将不得不忍受它。 但无论如何,真正的问题是什么?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.