我正在尝试使用stoi和stod但是eclipse不会让我。我正在使用带有minGW最新版本的eclipse Lina(在Win 8.1上)。
以下是我的尝试:
C/C++ Build -> Settings -> Tool Settings -> GCC C++ Compiler -> Miscellaneous -> Other Flags
。把-std = c ++ 11
C/C++ General -> Paths and Symbols -> Symbols -> GNU C++
。点击“添加...”并粘贴__GXX_EXPERIMENTAL_CXX0X__
(确保将两个下划线附加并添加前缀)到“名称”中,并将“值”留空。
转到Project -> Properties -> C/C++ General -> Path and Symbols -> Tab [Symbols]
。添加符号__cplusplus
,其值为201103L
Window->Properties-> C/C++ -> Setting -> Build-> Discovery Options-> CDT GCC Built-in Compiler Setting
并将“-std = c ++ 11”标志添加到那里的调用参数。 linse现在是${COMMAND} ${FLAGS} -E -P -v -dD -std=c++11 "${INPUTS}"
Properties -> C/C++ Build -> Settings -> Tool Settings -> GCC C++ Compiler -> Dialect
将-std=c++11
放入标题为其他方言标记的文本框中,或从语言标准下拉菜单中选择ISO C++11
。
-std=c++11
标记位于CDT GCC Built-in Compiler Settings
下的“提供程序”标签的Preprocessor Include Paths, Macros etc.
条目中。它也是唯一选中的条目。
我在尝试的每一步之后重建索引器和项目本身。没有帮助。 我不知道还有什么要做......
* PS我已经包含了std和字符串库并使用了命名空间std
答案 0 :(得分:0)
stoi
和stod
不是标准功能。尝试使用boost
来实现此功能。
编辑:我猜c ++ 11确实包含了这些功能。你确定使用std::
吗?
另外,请确保至少使用gcc 4.7
我之前听说过eclipse遇到c ++ 11标准问题。除非所有这些都不起作用,否则您能够使用boost::lexical_cast
?
答案 1 :(得分:0)
以下方法适用于我。
转到项目 - >属性 - > C / C ++一般 - >路径和符号 - >标签[符号] - > GNU c ++。
添加符号:
__ cplusplus,其值为201103L