gpt4 book ai didi

c++ - 为什么无论是否使用 "extern"都会编译?

转载 作者:太空宇宙 更新时间:2023-11-03 10:21:17 25 4
gpt4 key购买 nike

在 a.cpp 中:

int t()
{
//definition goes here
...
}

b.cpp:

#include "a.h"

int main()
{
t();
}

终于啊:

extern int t();
//int t();

两种形式的 a.h 都有效,为什么?

最佳答案

因为函数默认都是extern的,所以extern关键字是多余的。有些人喜欢显式添加 extern,当他们想提示其他开发人员在与此 .h 文件同名的 .cpp 文件中找不到该函数的定义时,他们会添加指向函数声明位置的注释。但从编译器的角度来看,它不会影响任何东西。

关于c++ - 为什么无论是否使用 "extern"都会编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4309851/

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