在MinGW GCC 5.1.0上没有声明std :: stoi的问题

时间:2017-03-17 08:31:12

标签: c++11 gcc mingw

我在运行MinGW GCC 5.1.0的计算机上尝试了我的代码。

当我进入时:

g++ hope.cpp -o hope -I D:\armadillo-7.600.2\include

cmd告诉我:

hope.cpp:183:26: error: 'stoi' was not declared in this scope
Point_Num = stoi(temp[1]);//number of point
                      ^
hope.cpp:190:34: error: 'stof' was not declared in this scope
Point(i, 0) = stof(temp[travel]);

但是当我进入时:

g++ hope.cpp -o hope -I D:\armadillo-7.600.2\include -std=c++11

cmd告诉我:

C:\Users\von77\AppData\Local\Temp\ccXdhQzS.o:hope.cpp:(.text$_ZN4arma7op_norm21vec_norm_1_direct_stdIdEET_RKNS_3MatIS2_EE[_ZN4arma7op_norm21vec_norm_1_direct_stdIdEET_RKNS_3MatIS2_EE]+0x7b): undefined reference to `dasum_'
C:\Users\von77\AppData\Local\Temp\ccXdhQzS.o:hope.cpp:(.text$_ZN4arma7op_norm21vec_norm_2_direct_stdIdEET_RKNS_3MatIS2_EE[_ZN4arma7op_norm21vec_norm_2_direct_stdIdEET_RKNS_3MatIS2_EE]+0x7f): undefined reference to `dnrm2_'
C:\Users\von77\AppData\Local\Temp\ccXdhQzS.o:hope.cpp:(.text$_ZN4arma4blas3dotIdEET_yPKS2_S4_[_ZN4arma4blas3dotIdEET_yPKS2_S4_]+0x3f): undefined reference to `ddot_'
C:\Users\von77\AppData\Local\Temp\ccXdhQzS.o:hope.cpp:(.text$_ZN4arma6lapack5gesddIdEEvPcPiS3_PT_S3_S5_S5_S3_S5_S3_S5_S3_S3_S3_[_ZN4arma6lapack5gesddIdEEvPcPiS3_PT_S3_S5_S5_S3_S5_S3_S5_S3_S3_S3_]+0x8c): undefined reference to `dgesdd_'
collect2.exe: error: ld returned 1 exit status

在我使用atoi而不是stoi之后: 我得到的结果和#34; g ++ hope.cpp -o hope -I D:\ armadillo-7.600.2 \ include -std = c ++ 11"。

1 个答案:

答案 0 :(得分:0)

您需要包含字符串标题

#include <string>

,您需要指定命名空间

std::stoi(temp[1]);