En C++/CLI, se pueden utilizar los tipos nativos en una clase administrada por ella no se le permite mantener un miembro de una clase nativa en una clase administrada: es necesario utilizar punteros en ese caso.auto_ptr o shared_ptr equivalente en gestionadas clases C++/CLI
Aquí se muestra un ejemplo:
class NativeClass
{
....
};
public ref class ManagedClass
{
private:
NativeClass mNativeClass; // Not allowed !
NativeClass * mNativeClass; // OK
auto_ptr<NativeClass> mNativeClass; //Not allowed !
boost::shared_ptr<NativeClass> mNativeClass; //Not allowed !
};
¿Alguien sabe de un equivalente de shared_ptr en el mundo C++/CLI?
Editar: Gracias por su sugerencia, "1800-información". Siguiendo su sugerencia, consulté sobre STL.Net pero solo está disponible con Visual Studio 2008, y proporciona contenedores + algoritmos, pero no punteros inteligentes.
http://codereview.stackexchange.com/questions/1695/scoped-ptr-for-c-cli-ensure-managed-object-properly-frees-owned-native-object –