comment puis-je rendre une classe utilisable dans une instruction foreach?Comment rendre un objet (classe) joignable en D?
La classe contient un tableau associatif (par exemple, string [chaîne]). L'instruction foreach utilise donc ce tableau comme source.
donc ce que je veux:
auto obj = new Obj();
foreach (key, value; obj)
{
...
}
Dois-je mettre en œuvre une someting d'interface comme ça?
EDIT:
La solution:
public int opApply(int delegate(ref string, ref Type) dg)
{
int result = 0;
foreach (ref key, ref value; data)
{
result = dg(key, value);
if (result != 0)
{
break;
}
}
return result;
}
Même chose pour le public int opApply (int délégué (ref Type) octies).
Je ne pense pas que les gammes axé sur le soutien de foreach déballer encore. Et 'opApply' peut également être utilisé dans D2. – kennytm
opApply était la solution, thnx! – VDVLeon