2016-04-11 67 views
1

MapResult öğesinin map! şablonunu auto türünden int [] türüne dolaylı olarak dönüştürmesi gerekir. Nasıl yapabilirim?MapResult haritadan nasıl dönüştürülür? ints dizisine

import std.stdio; 
import std.conv; 
import std.array; 
import std.algorithm; 

void main() 
{ 
    string s = "1,3,5,6,8"; 

    int x []; 
    // auto xx = s.split(",").map!(a => to!int(a)); // working code 
    x = s.split(",").map!(a => to!int(a)); // not working 
    writeln(x); 
} 

cevap

5

değil mümkün örtük, ancak açıkça array ile: aslında * ihtiyaç * en iyi performansı istediğiniz takdirde sürece

int[] x = s.split(",").map!(a => a.to!int).array; 
+3

BTW, bunu yapmayın - bu yapılmazsa bir sebebi var otomatik veya örtülü! Eğer sadece sonucun nasıl olmasını istersen, diziyi yapmadan dönebilirsin. –