Мое решение содержит много проектов, все они написаны на C #.
Мне нужно перенести все решение на C ++ и Linux. Переписывание всех проектов займет много времени, поэтому я хочу сделать это один за другим. Я хочу начать с самого «обычного» проекта с базовых классов.
Я думал начать переписывать проекты один за другим на C ++ — CLI, начиная с самого «общего» проекта (базовый проект с базовыми классами, которые используют другие проекты).
Но все будет закончено, кажется, у меня будет много кода CLI, который, я полагаю, не переносим в Linux?
Таким образом, главный вопрос заключается в том, насколько интенсивно я должен использовать CLI, учитывая, что мне нужно будет запустить решение в Linux?
Я могу избежать CLI и заменить его, например, на zeromq, если это будет лучше.
обн Это торговое приложение HFT, поэтому моно не приемлемо. Я хочу иметь чистый c ++, свободный от gc язык, так как планирую много оптимизировать (код без блокировки, спин-блокировки, возможно, с использованием AVX и NUMA и т. Д.)
C ++ / CLI специфичен для Microsoft. Это не будет портативным. Также вы не избавитесь от GC, поскольку GC — это особенность фреймворка, а не язык. C ++ / CLI — это просто еще один язык .net с комбинированным нативным кодом.
Если вы действительно не можете использовать моно, тогда вам не повезло. Вам придется все переписать.
Других решений пока нет …