функция уже определена в .obj
Насколько я понимаю, эта ошибка вызвана неправильным использованием защиты заголовков, когда у вас есть несколько файлов, включая один и тот же файл. В моем случае это дерево включения, котороевызывает ошибку:
File A includes Z, which contains the functions I need. File B includes A, and file C includes A.
Без всяких '#pragma once
s, программа выдает кучу вариантов одной и той же ошибки:
blahblah.obj: error LNK2005: class some::namespace::ObjectType Object already
defined in dialogDlg.obj
Мне просто было интересно, учитывая дерево включения, которое я описал, как правильно заставить его правильно скомпилироваться?
Я пытался с помощью#pragma once
в файле Z, но это нет работа. Я также однажды попробовал #pragma в файле A, который тоже нет работа. Наконец я попробовал это и на A и на Z, также нет работа.