Люди, помогите плиз....
Вот код...
Блитц
Const MAX%=10
Type Part
Field x
Field y
End Type
Type EM
Field count%
Field s.Part[MAX%]
End Type
p.EM=New EM
p\count=10
Print "p\count-"+p\count
For i=1 To 10
p\s.Part[i]=New Part
p\s.Part[i]\x=Rand(100)
Print "p\s.Part["+I+"]\x -"+p\s.Part[i]\x
p\s.Part[i]\y=Rand(100)
Print "p\s.Part["+I+"]\y -"+p\s.Part[i]\y
Next
WaitKey()
c.EM =Last EM
m=MilliSecs()
For a=1 To 1000000
For i=1 To 10
c\s.Part[i]\x=1
c\s.Part[i]\y=2
Next
Next
m=MilliSecs()-m
Print "M="+m
WaitKey()
m=MilliSecs()
Update(c)
m=MilliSecs()-m
Print "M="+m
WaitKey()
Delete Each Part
Delete Each EM
End
MSVC++ (DLL)
#define B3DDLL extern "C" _declspec(dllexport)
const MAX=10;
struct Part
{
int x;
int y;
};
struct EM
{
int count;
Part c[MAX];
};
B3DDLL void _stdcall Update(EM* v)
{
for(int a=1;1000000;a++)
{
for(int i=1;10;i++)
{
v->c[i].x=1;
v->c[i].y=2;
};
};
};
При попытке обращения к длл вылетает... как быть?
или я ерунду пытаюсь сделать?