Envolviendo código administrado para uso no administrado
Tenemos un gran proyecto de C ++ que se compila como código nativo no administrado. Necesitamos usar una función del código administrado, pero no queremos compilar todo el proyecto en /clr
Así que hice una DLL, tengo una clase de referencia llamada B, que se expone en la clase nativa exportada A. El problema es que obtengo un C1190: el código dirigido administrado requiere una opción '/ clr' debido a la inclusión de vcclr.h.
Me gustaría saber si hay una manera de crear algún tipo de interfaz que tenga código administrado dentro de métodos no administrados.
Aquí está mi código:
#pragma once
#include "EX_Port.h"
#include <vcclr.h>
ref class B;
class EX_API A
{
public:
A();
int DeviceCount();
private:
gcroot<B^> _device;
};
Logré hacer que funcione gcnew la clase B dentro del cpp. Pero luego tengo un objeto local mientras me gustaría tenerlo en el ámbito global. Acabo de comenzar a hacer la programación de la CLI, por lo que podría no estar al tanto de algunas práctica
Gracia