首页 > 其他 > 详细

声明与定义的区别

时间:2021-06-06 21:12:46      阅读:16      评论:0      收藏:0      [点我收藏+]

C++ 要求先声明后使用

声明不要求初始化。

定义必须初始化

做过单板开发的应该就能看懂下列程序,估计就想明白了。

#include <string>

void f(); // forward declaration

int main()
{
const double pi = 3.14; //OK
int i = f(2); //OK. f is forward-declared
std::string str; // OK std::string is declared in <string> header
C obj; // error! C not yet declared.
j = 0; // error! No type specified.
auto k = 0; // OK. type inferred as int by compiler.
}

int f(int i)
{
return i + 42;
}

namespace N {
class C{/*...*/};
}

程序参考来源:微软的C++开发文档 链接:https://docs.microsoft.com/en-us/cpp/cpp/declarations-and-definitions-cpp?view=msvc-160&viewFallbackFrom=vs-2019

如何还是不能理解的话,

想一下java开发的 import 关键字。

使用import导入其他包的时候,其实就是一次声明。告诉编译器,我使用了这个包里的函数,类,变量等等。

我们不需要知道这个包里函数,类,变量是怎么定义实现的,只需要知道包里有这些函数,类,变量的名称及使用方法即可。

 

声明与定义的区别

原文:https://www.cnblogs.com/chen1846847163/p/14855742.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!