Использование boost:: lexical_cast<double>(строка)

Я новичок и мне нужно объяснение, почему это не работает:

string myArray[620223];
//myArray is then populated with a while loop using ifstream and getline
string myString = myArray[9];
double myValue;

try {
    myValue = boost::lexical_cast<double>(myString);
} 
catch(boost::bad_lexical_cast const&) {
    myValue = 0;
}

myArray [9] не равен нулю, но результирующий дубль всегда равен нулю. Любая помощь будет принята с благодарностью. Спасибо.

1 ответ

Поскольку код выглядит хорошо, вот обоснованное предположение. myArray[9] является десятым элементом массива. myArray[0] это первое. Вы на самом деле хотели девятый элемент, myArray[8],

Другие вопросы по тегам