声明和定义的区别

声明其实就是告诉编译器有这个东西的存在,至于你在哪不重要,有就可以。但是定义就是在内存中开辟空间,此时编译器知道定义在哪!调用的时候能根据你开辟的地址找到定义,如果有多个定义,编译器就会分不清调用哪一个了。所以声明可以有多个相同的 ,但是定义只能有一个的原因。这就像一个人的身份和人这个实体一样,人这个实体只能有一个 但是一个人可以有多个身份,可以是老师,孩子,父亲,丈夫等。

猜你喜欢

转载自blog.csdn.net/qianyayun19921028/article/details/80649305