Метод экспорта dll из C++ в C#. Зачем мне это нужно: " extern "C" "

В моей dll есть метод, который я хочу экспортировать.

//Работает:

extern "C" __declspec(dllexport)

//Не работает

__declspec(dllexport)

C++ Export:

 extern "C" __declspec(dllexport) int Test();

C# import:

[DllImport("CircleGPU2_32.DLL", EntryPoint = "Test", 
    CallingConvention = CallingConvention.StdCall)]
public static extern int Test();

Зачем мне нужен extern "C" ?

11
задан David Heffernan 16 December 2011 в 13:56
поделиться