2018年3月9日 星期五

Visual Studio IMAGE::BuildImage 錯誤

Visual Studio IMAGE::BuildImage

錯誤信息:
LINK : fatal error LNK1000: Internal error during 
IMAGE::BuildImage
先按上面的清除方案把暫存檔清掉,如果沒犯什麼引入的錯大概就好了
如果清掉還是不行,有可能是引入的問題
  1. A.cpp 引入 B.hpp 然後 B.cpp 又引入 A.hpp 互相卡住
  2. 盡量清除 .hpp 內的引入,寫到 .cpp 內
[1] 整理一下邏輯了,會互卡就很奇怪了~很容易出現在架構沒出來走一步算一步的情況
[2] 降低多餘的引用,如果寫在 hpp 內每個引用的檔案都會引用到
寫道 cpp 內的話需要置後,比如說一份檔案 A.hpp 內寫到了 vector ,那你在 A.cpp 的時候要這樣寫
#include <vector>
#include "A.hpp"
這樣就能編過了,不過也導致每個引入 A 的都要補 vector,如果是內建的比如說 vector、string 這些用到的機率也很高就寫吧;如果是自己寫的函式庫看有沒有方法,改個寫法避開,原則上能越少越好。

參考

沒有留言:

張貼留言