arrayを使用してdouble型の変数を代入

解決


777  2009-02-08 16:17:32  No: 69643  IP: 192.*.*.*

arrayを使用してdouble型の変数を代入したいのですが、
結果は、12となってしまいます。

何がいけないのでしょうか?
以下ソースです。


String^ s_str = "12.3,10.5";

array<String^>^split = s_str->Split( ',' );

array< array< double >^ >^ dbl= gcnew array< array< double >^ >( 128 );

dbl[0] = gcnew array< double >(Convert::ToDouble(split[0]));

編集 削除
επιστημη  URL  2009-02-08 16:43:43  No: 69644  IP: 192.*.*.*

変換がデタラメだから。

using namespace System;

double ToDouble(String^ str) {
  return Convert::ToDouble(str);
}

int main() {
  String^ s_str = "12.3,10.5";
  array<String^>^split = s_str->Split( ',' );
  array< array< double >^ >^ dbl= gcnew array< array< double >^ >( 128 );
  dbl[0] = Array::ConvertAll(split, gcnew Converter<String^,double>(&ToDouble));
  Console::WriteLine(L"{0} {1}", dbl[0][0], dbl[0][1]);
}

編集 削除
επιστημη  URL  2009-02-08 17:24:56  No: 69645  IP: 192.*.*.*

おっと、これ↓で十分か。

using namespace System;

int main() {
  String^ s_str = "12.3,10.5";
  array<String^>^split = s_str->Split( ',' );
  array< array< double >^ >^ dbl= gcnew array< array< double >^ >( 128 );
  dbl[0] = Array::ConvertAll(split, gcnew Converter<String^,double>(Convert::ToDouble));
  Console::WriteLine(L"{0} {1}", dbl[0][0], dbl[0][1]);
}

編集 削除
777  2009-02-08 18:36:30  No: 69646  IP: 192.*.*.*

επιστημηさん

ありがとうございました。
解決できました。

ここのサイトはみなさん、本当に親切で助かります。

ありがとうございました。

編集 削除