我所做的是我编写了一个程序,根据单选按钮的选择,它会将“True”或“False”写入文本文件(preferences.txt)作为字符串。在第二个程序中,我希望它在Load事件上读取此文件,并根据存在的内容,隐藏一堆控件或不执行任何操作。代码如下:
String^ hostScreenChoice;
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
ifstream prefFile ("preferences.txt"); //FIX THIS
getline(prefFile, hostScreenChoice);
if (hostScreenChoice == "True")
{
//DO NOTHING, CONTINUE
}
else if (hostScreenChoice == "False")
{
//HIDE CONTROLS
}
现在我对C ++ / CLI相对较新(事后看来,我可能应该开始学习C#.NET),所以正如初学者所期望的那样,我遇到了一些错误。
error C2784: could not deduce template argument for 'std::basic_istream<_Elem,_Traits> &' from 'std::ifstream'
是犯规错误。我已经滚动浏览互联网,但到目前为止没有运气,虽然我认为这可能是由于我宣布字符串的方式,但我不确定。你们可以帮助我,还是有更有效的方法来做我正在尝试的事情?我正在使用VS 2010 Express作为我的IDE。
答案 0 :(得分:0)
即使您使用C++
进行编程,也不一定意味着您被迫使用本机C++
函数。 C++/CLI
为您提供.NET
的完整方案,因此我认为使用FileStream Class或StreamReader Class阅读文件要容易得多。