En C++/CLI, vous pouvez utiliser des types natifs dans une classe managée car il n'est pas autorisé à contenir un membre d'une classe native dans une classe managée: vous devez utiliser des pointeurs dans ce cas.auto_ptr ou shared_ptr équivalent dans les classes C++/CLI gérées
Voici un exemple:
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 !
};
Est-ce que quelqu'un sait d'un équivalent de shared_ptr dans le monde C++/CLI?
Editer: Merci pour votre suggestion, "1800-Information". Suite à votre suggestion, j'ai vérifié sur STL.Net mais il est seulement disponible avec Visual Studio 2008, et il fournit des conteneurs + des algorithmes, mais pas de pointeurs intelligents.
http://codereview.stackexchange.com/questions/1695/scoped-ptr-for-c-cli-ensure-managed-object-properly-frees-owned-native-object –