С# + С++
на обычном С++ нелзя.
А значит это по сути то, что любой язык для .Net компиляруется в промежуточный объектный байт-код, который собственно и выполняется на виртуальной машине фреймоворка.
Или, для более старой версии платформы, PInvoke.
(Оффтоп)
Хотя, один мой друг, работающий сейчас с .NET 3.0, говорил, что маршаллинг -- это 9 круг для тестера:)
Уж не знаю, насколько он прав, не работал.
(/Оффтоп)
Только вот вызывать нативный код из управляемых платформ - это очччень радикальное решение, автор. Для прикладных задач использовать это точно не надо. В принципе, ты можешь написать реализацию почти всех нужных функций на С++, и только вызывать их из кода на шарпе. Но это жуть.
Это не то )
Автор же как мне видится хочет просто компиялть плюсовый код и тут же юзать оттуда классы. )
Автор же как мне видится хочет просто компиялть плюсовый код и тут же юзать оттуда классы. )
В маршаллинге можно и так.
Только вот для множественного наследования вроде, сбоит.
aks прав - у меня есть библиотека функйий, использующая только STL и я хочу сделать для неё интерфейс на C#. Насчёт я не совсем понял - чем он всё таки отличается от C++ и С#?
B что будет, если я возьму существущий проект на C++ и скомпилирую его как managed?
В маршалинге я не силён, кроме того это не очень удобно тк мне придётся по ходу дела вносить изменеия в код на C++. Может быть есть какая-нибудь переводилка с одного языка на другой, как с Java на с++?
Насчёт я не совсем понял - чем он всё таки отличается от C++ и С#?
Чем отличается С++ от C# что ли? Не понял вопроса.
Так не получится. По сути C++ и managed С++ тоже разные языки. И много, что можно в C++ нельзя в managed.
2 cheburator: то что можно переделать - понятно, но хочется свести количество работы руками к минимуму.