J'essaie de créer un generic list de références à PointF
objets. (Non, je ne cherche pas à créer une liste générique de PointF
objets.) Cependant, la ligne suivante ne peut pas compiler:C++/CLI: Listes de boxe et génériques
Generic::List<PointF^> ^pointList; // Generates error C3225
D'autre part, la création d'un tableau de PointF
références fonctionne sans problème comme suit :
array<PointF^> ^points = gcnew array<PointF^>;
Voici un exemple de programme:
using namespace System;
using namespace System::Drawing;
namespace Generic = System::Collections::Generic;
int main(array<System::String ^> ^args)
{
array<PointF^> ^points = gcnew array<PointF^>{
nullptr, PointF(0.0f, 0.0f), PointF(1.0f, 0.0f), nullptr
};
Generic::List<PointF^> ^pointList;
Console::WriteLine(L"Hello World");
return 0;
}
Comment puis-je créer une liste générique de PointF
références? En d'autres termes, comment puis-je créer une liste générique de boîtes PointF
s?
Pourquoi le tableau se compile-t-il sans problème? Le compilateur gère automatiquement la boxe/unboxing dans ce cas. Pourquoi cela ne fonctionnera-t-il pas dans le cas d'une liste générique? –