分配:
从文本文件中读取信息(完成)
使用substr方法仅检索文本文件的一部分(完成)
将信息存储到实例变量中(需要帮助)
这是我遇到麻烦的代码:
string* lati;
lati = new string(data.substr(0, data.find_first_of(",")));
double* latDub;
latDub = new double(atof((char *)lati));
this->latitude = *latDub;
我需要将纬度存储到实例变量
latitude
中。变量
data
是读入的文本文件。this->latitude
被声明为double
。我已经测试过,变量
lati
是正确的值,但是一旦我尝试将其转换为double
时,由于某种原因,该值将更改为0
。我特别应该在转换时使用atof
方法! 最佳答案
(char *)lati
不会执行您认为的操作。您显然想在其中执行的操作是获取与lati相关的char
序列,但是您实际上所做的只是将string*
压缩到char*
中,这很糟糕。
std :: string上有一个成员函数,该函数将为您提供所需的确切信息。您应该查看文档中的字符串,然后用对该函数的调用替换(char *)lati
。