179一个错误的认识
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                179一个错误的认识
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                一編譯
?
?說明函數fun 重定義了。
?我們說函數的定義一定要寫在源文件中,為什么不能寫在頭文件中?因為頭文件要在我們的項目中在多個位置被包含,頭文件的本質就復制替換。如果函數定義寫在了頭文件中,那么就相當于在程序的多個位置,出現了和 fun 同名的函數。所以函數的定義要寫在源文件中,而源文件不會被包含,所以源文件中的內容一定是獨一份的。
這里為什么fun會 重定義呢?
之前說過,像結構體只是在所在的文件中可見,在一個文件中定義了 struct cc 這個結構體,在另一個文件中再定義 struct cc 這個結構體,他倆之間沒有任何的關系。只在自己所在的文件中可見。
而函數的定義是只能存在一份,相當于是全局的!也就是整個工程都只能存在一個fun。fun在任何位置都好使。
所以,定義放在源文件中,聲明(宏,typedef,結構體的聲明,函數聲明)放在頭文件中。 ?
?另外? 一個問題
如果想要結構體互相嵌套的時候,要使用指針。為什么?
因為指針不管是什么類型的,在32位編譯器環境下就是4字節。
所以
結構體中出現未定義 這個問題就是未知大小!
?
轉載于:https://www.cnblogs.com/dabing0983/p/10559556.html
總結
以上是生活随笔為你收集整理的179一个错误的认识的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 第16章:MongoDB-聚合操作--聚
 - 下一篇: Vue -- 项目报错整理(1):Ran