美好的一天
我搜索过高低,但没有解决方案。
IDE: NetBeans IDE 8.2 MinGW:使用"最新版本" MinGW编译器。
原始问题:
我想将int转换为字符串。
使用this方法,我尝试转换为字符串,但是
这个提议的方法std::to_string()
在使用时导致错误(以to_string作为错误)
无法解析标识符to_string
项目依赖:
#include <string>
#include <iostream>
正在寻找此问题的解决方案,出现了2个推广解决方案here和here
设置C和C ++编译器版本应该可以解决这个问题。
没有,有什么建议吗?
最小代码:
#include <string>
struct User_VPN_Info{
std::string name, expire;
int DaysLeft;
User_VPN_Info(){}
User_VPN_Info(std::string _name, std::string _expire, int _DaysLeft){
name = _name;
expire = _expire;
DaysLeft = _DaysLeft;
}
std::string getString(){
return(name + " + " + expire + " + " + std::to_string(DaysLeft) + " ; ");
} //^_______^ problem here
};
答案 0 :(得分:2)
MinGW已知问题
gcc -std=gnu++14 -Wall -Wextra main.cpp main.cpp: In function 'int main()': main.cpp:24:26: error: 'to_string' was not declared in this scope cout<<to_string(a)<<endl; gcc --version gcc.exe (GCC) 5.3.0
即时'标准'MinGw你应该使用MinGW-w64 - 用于32位和64位Windows
/mingw-w64/i686-6.2.0-posix-dwarf-rt_v5-rev1/mingw32/bin ./g++ -std=c++14 main.cpp
编译没有错误
如果您想在Netbeans中更改工具链,则必须在项目属性中添加新的工具集合。
答案 1 :(得分:0)
在回答这个问题之前,我要感谢斯特夫指导我朝着正确的方向前进,从而让我解决问题,如果你认为值得,请给他的答案一个赞成。
我的安装信息
Product Version: NetBeans IDE 8.2 (Build 201609300101)
Java: 1.8.0_112; Java HotSpot(TM) 64-Bit Server VM 25.112-b15
Runtime: Java(TM) SE Runtime Environment 1.8.0_112-b15
System: Windows 10 version 10.0 running on amd64; Cp1252; en_ZA (nb)
设置Netbeans等
按照惯例,我按照netbeans documentation page for seting up netbeans with c++的规定安装了mingw32,这是为c ++设置编译器(因为看起来不会自动执行此操作)。
我按照所有步骤,添加环境路径,而不是更改任何安装路径,以保持&#34;教程&#34;尽可能。
编码和导入代码后,我遇到了上面提到的错误,所以steff建议使用MinGW64编译器,我刚刚使用了mingw32编译器。
<强>解决方案强>
所采取的步骤概述(我的解决方案)
<强> 1 强>
MinGW64设置从sourceforge找到here
安装此项,不更改课程设置。
<强> 2 强>
开放netbeans&gt;工具&gt;选项&gt; C / C ++标签。
这里我左边有MinGW,这是预安装的编译器,由于文档页面中的安装说明(MinGW32编译器/ toochain提供错误)而存在
单击Add(添加新编译器),浏览到新安装的MinGW64编译器的位置,我的位于:
C:\Program Files\mingw-w64\x86_64-6.2.0-win32-seh-rt_v5-rev1\mingw64\
将编译器命名为适当的名称,我将其命名为&#34; MinGW_64&#34;对于工具收集系列,选择&#34; GNU MinGW&#34;,然后单击确定。
就我而言,我必须填写2个部分,即C Compiler
字段和C++ Compiler
字段。
请注意我不确定c ++应该指向哪个特定的exe,我只选择了c++.exe
,这个编译器解决了我的问题,我不确定{{ 1}}
请参阅下面的图片作为参考。
完成此操作后,将MinGW64编译器设为默认编译器。
3。
最后,如果您有一个发生此错误的打开项目(我假设很可能就是这种情况),最后还有一件事要做。
右键点击您的项目&gt;属性&gt;建立。
查找选项&#34;工具集合&#34;,相应的编译器名称应为&#34; MinGW&#34; (与我之前提到的编译器名称相同 - 有问题),这应该更改为刚刚安装并添加到Tools&gt;中的新MinGW_64编译器。选项&gt; C / C ++部分。
完成!强>
关闭项目属性,项目应自动重新分析,如果没有,右键单击项目&gt;代码帮助&gt;重新分析项目,等待重新分析,你的问题应该解决。
我真的希望这会有所帮助。