On Monday, April 30, 2012 01:42:38 WhatMeWorry wrote: > I'm trying to get my head around D's type conversion. What is the > best way to convert a string to a char array? Or I should say is > this the best way? > > string s = "Hello There"; > char[] c; > > c = string.dup;
dup will return a mutable copy of an array. idup will return an immutable copy of an array. They will both always copy. If you want to convert without having to make a copy if the array is of the constancy that you want already (e.g. if a templated function is templated on string type, and it could be any constancy of char[]), then use std.conv.to. auto c = to!(char[])(str); If str was already char[], then it will just be returned, whereas if it's immutable(char)[], then it would dup it and return that. > Also, what is the best way to explicitly convert a string to an > int? I've been looking at Library Reference (Phobos) but I'm > stuck. Use std.conv.to: auto i = to!string("1234"); std.conv.to is what you use for pretty much any conversion. - Jonathan M Davis