C# & C++
От: boxter Россия  
Дата: 05.02.06 19:10
Оценка:
Доброго времени суток,
возник небольшой вопрос при написании программы на C# (VS2005)

цель (начальная):
написать программу на C#, которая подгружает библиотеку на C++
и они используют структуры и классы для передачи данных

проблема:
в языках объекты представляются по-разному и так просто передать из программы в dll и обратно экземпляр класса или структуры достаточно сложно (но возможно)

мысли в сторону решения:
в локальном мсдн нашел решение такого типа:
для шарпа:
[StructLayout(LayoutKind.Explicit)]
public struct Rect 
{
   [FieldOffset(0)] public int left;
   [FieldOffset(4)] public int top;
   [FieldOffset(8)] public int right;
   [FieldOffset(12)] public int bottom;
}

для ++:
[StructLayout(LayoutKind::Explicit)]
value struct Rect
{
public:
   [FieldOffset(0)]int left;
   [FieldOffset(4)]int top;
   [FieldOffset(8)]int right;
   [FieldOffset(12)]int bottom;
};


а теперь вопрос:
как и каким образом все это совместить в программе на C# и dll на C++?
если у кого-нибудь есть немного времени, то прошу написать простенький пример реализации такого способа передачи данных через структуру и (или) класс

заранее спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.