Обтекание c # / WPF GUI вокруг c ++ / cli вокруг нативного c ++ - PullRequest
2 голосов
/ 15 июня 2011

Это довольно сложная ситуация. Я занимаюсь рефакторингом (с нуля) c ++, который должен использоваться как CGI-скрипт и как ядро ​​автономного приложения.

К сожалению, я не писал C ++ с тех пор, как учился в колледже, и более знаком с c # / Java. Поэтому я собираюсь использовать WPF для графического интерфейса. Из того, что показали мои исследования, это означает, что я буду:

1) Рефакторинг базового кода в неуправляемом C ++ (да, для поддержки intellisense, а?)

2) Оборачивание этой базы в управляемую библиотеку классов

3) Обтекание шага 2 в графическом интерфейсе C # / WPF с ссылкой на него посредством взаимодействия (CLI / CLR).

шаг 2, я уверен, будет хорошо задокументирован. Однако я начинаю с самого верха и не могу найти ничего конкретного о том, как создавать экземпляры и использовать класс, созданный / предоставляемый в управляемом c ++.

Я бы просто написал все это на языке c #, если бы у меня были мои барабанщики (нет необходимости в жесткой эффективности), но у меня нет такого выбора.

Может ли кто-нибудь указать мне правильное направление для шага 3, чтобы я мог начать его исследовать? Я не хочу, чтобы кто-то делал за меня домашнее задание (так сказать), но мои собственные исследования этого процесса оказались бесплодными.

1 Ответ

3 голосов
/ 15 июня 2011

Если вы оберните ваши неуправляемые классы C ++ в управляемые объекты CLI / C ++, вам не нужно Interop для вызова управляемых классов (Visual C ++ будет компилировать как управляемый, так и неуправляемый C ++ в одной и той же библиотеке).

Просто свяжите смешанную управляемую / неуправляемую библиотеку с управляемым приложением C #, и открытые управляемые объекты будут вести себя как любой обычный объект.

Для хорошей отправной точки проверьте эту статью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...