gpt4 book ai didi

c++ - 在定义和声明中都指定 extern 关键字是否可以

转载 作者:行者123 更新时间:2023-11-27 22:48:52 26 4
gpt4 key购买 nike

我知道C++中的extern关键字可以用来告诉编译器这个特定的变量有一个外部链接(它是在另一个翻译单元中定义的):

// first.cpp

int foo = 0;

// second.cpp

extern int foo;

但是下面的用法呢?

// first.cpp

extern int foo = 0;

// second.cpp

extern int foo;

请注意,这两个文件在定义和声明中都为同一变量指定了 extern 关键字。

还好吗?如果是这样,那有什么区别?

最佳答案

extern int foo = 0;

相同
int foo = 0;

出于所有实际目的。 extern 关键字是多余的,但并非不正确。

但是,还是有区别的

extern int foo;

int foo;

第一个是声明,第二个是定义。

关于c++ - 在定义和声明中都指定 extern 关键字是否可以,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39867164/

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