[英]Using a C++ String to open an fstream
在Visual Studio 2010中,即使使用/ Za(struct ANSI)編譯器標志,以下代碼也可以工作。
string name = "input.txt";
ifstream fin;
fin.open(name);
我能找到的所有文檔似乎都表明你必須將一個C字符串傳遞給ifstream :: open。 這是真的ANSI現在,還是Microsoft擴展,並且/Za
標志有問題?
謝謝,
索爾
在C ++ 11中,您可以直接傳遞字符串。 Visual Studio 10支持此功能。 在C ++ 11之前,你必須傳遞一個c字符串,你可以這樣做:
fin.open(name.c_str());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.