On 2012-11-27 06:03, dsmith wrote:
How can I make something like the following work without "Error: cannot
append type double to type string[]" ?


T[] some_function(T[] var) {
  T[] var2;
  double a = 12.34;
  string b = "hello";

  if(typeof(var).stringof == "double") {
    var2 ~= a;
  }
  if(typeof(var).stringof == "string") {
    var2 ~= b;
  }

...
}

Use static-if, but you shouldn't use .stringof. Check the actual type and not the string of the type:

static if(is(typeof(var) == double)) {
    var2 ~= a;
}

static if(is(typeof(var) == string)) {
    var2 ~= b;
}

--
/Jacob Carlborg

Reply via email to