У меня есть файл Matching.cxx, который содержит некоторые определения методов класса и некоторые другие функции. Он содержит вызовы ко многим другим классам.
В моем make-файле я сначала создаю объектные файлы для всех других классов, а затем пытаюсь создать Matching.o. Однако, когда я делаю это, я получаю ошибку для каждого появления этих других классов.
Также может быть важно, чтобы в области, генерирующей ошибки компиляции, я создал абстрактный базовый объект, и я наследовал от некоторого производного объекта, основанного на некоторых условных выражениях.
У меня такое ощущение, что это связано с неправильным связыванием объектных файлов, в настоящее время я просто делаю make-файлы каждого из классов (это нормально), затем создаю Matching.o (это не удается), а затем я бы связал они все вместе в финальный исполняемый файл.
Очевидно, что-то не так!
Любой совет с благодарностью
ура
Джек
Больше деталей:
//declare base object:
CPPProcess* process;
if(something is true) process = new CPPProcess2j_dd();
else if...
Ошибки выглядят так:
Matching.C: In function ‘CPPProcess* GenerateMGProcess(int, int, int, int*)’:
Matching.C:501: error: invalid conversion from ‘int’ to ‘CPPProcess*’
Matching.C:501: error: expected `;' before ‘CPPProcess2j_dd’
Задача ещё не решена.
Других решений пока нет …