Возможно ли перенести проект C# на C++/CLI?

Возможно ли перенести проект на WinForms с C# на C++/CLI. В теории должно сработать, так как они расположены на одной платформе .Net, исходя из книги Троелсена, то можно запускать проекты написанные на C# на языках которые работают с .Net платформой

Искал способы портирования, но на msdn только C++/CLI можно перенести на .Net Core
  • Вопрос задан
  • 535 просмотров
Решения вопроса 2
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Ровно там же написано для чего используется C++/ CLI
Для работы со старым кодом и для обхода некоторых ограничений более выкоуровневых языков.
На cli пишите ресурсоемкую часть кода, все остальное в том числе и интерфейс пишите на C#.
Это наиболее правильный путь.
Ответ написан
@d-stream
Готовые решения - не подаю, но...
Очень упрощенно .net приложения (в том числе c#) "компилируются" в виртуальный код clr, который и выполняется "процессором" - .net
c/c++ - компилируются в машинные коды [конкретного семейства процессоров] и эти машинные коды выполняются процессором физической машины.

В итоге - дизайн winforms - более менее можно перетащить даже без использования мозга, все остальное - долго и сложно. С учетом практики выстраивания извращенной спутанной каши из логики и кода в winforms - можно считать что "нельзя")
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@rPman
Перенос приложений между 'языками' чаще создает проблемы не языков и синтаксиса, у c# и с++ они почти идентичны, но из-за используемых библиотек и фреймворков, а точнее отсутствие тех что есть у .net но нет для с++, в т.ч. многопоточности, привычной работы со списками/итераторами и т.п.

Если же у вас наиболее скучный подход к разработке требуемого куска кода, например не используются внешние библиотеки и современный синтаксический сахар, то вы можете даже под opencl или nvidia cuda портировать свой код без особых шевелений.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы