gpt4 book ai didi

c++ - C++中 "extern"语句的确切含义是什么?

转载 作者:行者123 更新时间:2023-11-30 21:38:09 25 4
gpt4 key购买 nike

我只是想知道“extern”语句在 C++ 中的用途是什么,以及何时/为何使用它?
谢谢。

最佳答案

这是一个很好的解释:http://msdn.microsoft.com/en-us/library/0603949d.aspx

基本上它指定存储 - 带有“extern”关键字的声明指定变量具有外部链接 - 它不需要当前上下文中的存储空间,并且将在没有 的某个或其他单元中定义extern 修饰符,如果不这样做,将变成关于缺少引用的链接器错误,因为它被告知有一个不存在的变量。一个例子可以是库和多个客户端之间的共享项目,在 header 中声明 extern 以便客户端了解它,但存储实际上位于库中,因此在访问它时,它们使用正确的值,而不是在包含带有声明的文件的单元内分配存储空间的值。例如

Some header:
...
extern int dummy; // tells the unit that there is an integer dummy with storage speace somewhere else
...
dummy = 5; // actually changes the value defined in some other cpp file in the library

Some cpp file in the library:
...
int i; // references to i if not shadowed by other declarations reference this value

关于c++ - C++中 "extern"语句的确切含义是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18914979/

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