Задать вопрос
KirillHelm
@KirillHelm

Сторонние классы как поле в Windows Forms CLR C++?

Вечер добрый! Вечерком копался в студии и решил наклипать себе простенький проект. Загвоздка появилась при написании UI.
Исходные данные:
  • Статическая либа
  • Проект CLR с формой

Вроде как тревиальная задача, но не тут то было. Как я понимаю вся эта дрань которая заставляет функционировать C++ с .NET для работы с формами, это что-то среднее между оным и C#. Со всеми этими ^ вместо *, и мракобесное gcnew вместо духовного new.
Возжелал я значит подключить в заголовочный файл формы свой класс из либы. Подключил либу, заинклюдил директории, всё по уму. Только вот ругается, говорит:
a member of a managed class cannot be of a non-managed class type

Пробовал туда пихать как статическое поле, как указатель, ссылку, через эту вот красоту ^, но ничего и не как. В лучшем случаи вываливается в runtime, когда инстанциируется в конструкторе формы мой класс.
Я понимаю, что вся эта трахомудия просто нюансы самой платформы, но вот интернет не даёт чётких ответов, на вопрос:
Как инстанциировать приватным полем сторонний класс в классе формы?
  • Вопрос задан
  • 1257 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@John_Nash
coder
Все ж понятно написано. Нельзя смешивать managed и non-managed классы.

Вернее немного не так. Внутри managed класса можно создавать non-managed объекты. Наоборот нет.
Ответ написан
Ваш ответ на вопрос

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

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