Salve a tutti, spero qualcuno mi possa chiarire le idee
io ho il seguente codice:
praticamente sto utilizzando visual c++ 2010 per generare una dll che contenga alcune funzioni che utilizzano le opernnurbs, il compilatore mi da alcuni errori tra cui questi:codice:#include <Windows.h> #include <d:\lavoro\c++\opennurbs_20110202\opennurbs\opennurbs.h> extern "C" __declspec(dllexport) ON_3dVector Vcreate( ON_3dPoint p0, ON_3dPoint p1, double len) { double d = len / (p0.DistanceTo(p1)); double d = len / (p0.DistanceTo(p1)); ON_3dVector v = ON_3dVector::ON_3dVector ((p0.x - p1.x) * d, (p0.y - p1.y) * d, (p0.z - p1.z) * d); return v; } BOOL APIENTRY DllMain (HINSTANCE hInst /* Library instance handle. */ , DWORD reason /* Reason this function is being called. */ , LPVOID reserved /* Not used. */ ) { switch (reason) { case DLL_PROCESS_ATTACH: break; case DLL_PROCESS_DETACH: break; case DLL_THREAD_ATTACH: break; case DLL_THREAD_DETACH: break; } /* Returns TRUE on success, FALSE on failure */ return TRUE; }
warning C4190: 'Vcreate' è stato avviato al collegamento C, ma restituisce il tipo definito dall'utente 'ON_3dVector', che è incompatibile con il C
1> d:\lavoro\c++\opennurbs_20110202\opennurbs\opennur bs_point.h(931): vedere la dichiarazione di 'ON_3dVector'
qualcuno sa dirmi dove sbaglio? perdonate l'ignoranza, non ho mai programmato in c++ e purtroppo mi ci devo cimentare ed anche alla svelta perché dobbiamo riscrivere alcune funzioni abbastanza complicate scritte in c#... grazie in anticipo a chiunque mi aiuti.![]()


Rispondi quotando
