Существует ли элегантный способ совместного использования общего определения символов между проектом Delphi и C++ (Visual Studio)?Совместное определение между проектами Delphi и C++
Символ может быть определен или не определен в зависимости от обстоятельств. Очевидно, можно просто определить символ в обоих проектах, но вы можете прокомментировать его в одном проекте и забыть об этом в другом (или наоборот).
Если это возможно, я предполагаю, что символ должен быть помещен в файл .h или .inc и включен в оба проекта.
// Delphi
{$DEFINE COMMON_SYMBOL}
//...
SOME_CONSTANT = {$IFDEF COMMON_SYMBOL} 80 {$ELSE} 40 {$ENDIF};
// C++
#define COMMON_SYMBOL
//...
#ifdef COMMON_SYMBOL
#define SOME_CONSTANT 80
#else
#define SOME_CONSTANT 40
#endif
В приведенном выше коде, если COMMON_SYMBOL
определено, то SOME_CONSTANT
80, в противном случае это 40.
Возможно, этого было бы достаточно, чтобы определить SOME_CONSTANT с общими конкретными значениями в обоих проектах одновременно? Это было бы легко ... Но условное определение символов препроцессора через предварительный процессор не является –
Я не уверен, как это будет работать, потому что два компилятора и IDE совершенно разные (Embarcadero и Microsoft). – AlainD
Ухм ... это не разные вендоры, что делает это тяжело. Это факт, что вы имеете дело с двумя разными ** языками программирования **. У вас будет такая же проблема при совместном использовании кода между C++ и F #, даже при использовании компиляторов, произведенных одним и тем же поставщиком. – IInspectable