據我所知,當你有多個文件包括同一個文件時,這個錯誤是由於沒有正確地使用頭文件引起的。在我而言,這是包括樹是造成錯誤:函數已經在.obj中定義了
File A includes Z, which contains the functions I need. File B includes A, and file C includes A.
沒有任何#pragma once
的,程序給出了一堆同樣的錯誤的變化:
blahblah.obj: error LNK2005: class some::namespace::ObjectType Object already
defined in dialogDlg.obj
我只是想知道,鑑於我描述的包含樹,有什麼正確的方法來正確編譯?
我嘗試在文件Z上使用#pragma once
,但那不起作用。我也在文件A上嘗試過#pragma一次,這也沒有奏效。最後我在A和Z上都試過了,也沒有奏效。
東西給我你不使用單獨的頭文件的想法? – 2013-03-04 14:40:35