C++ 一次声明一个变量并从文件中初始化它
这是我的密码:C++ 一次声明一个变量并从文件中初始化它,c++,C++,这是我的密码: ifstream f("data.txt"); string dat; f >> dat; 有没有办法把它合并成一个语句,这样我就可以一次性声明和初始化变量 我试过了 string dat << f; string-dat简短的回答是“否” 较长的答案是,“你可以做一些能做到这一点的事情,但远没有那么直接” 模板 无法从文件(const char*fname)中读取 { 电视 IFF流(“data.txt”); f>>v; 返回v; } ... 字符
ifstream f("data.txt");
string dat;
f >> dat;
有没有办法把它合并成一个语句,这样我就可以一次性声明和初始化变量
我试过了
string dat << f;
string-dat简短的回答是“否”
较长的答案是,“你可以做一些能做到这一点的事情,但远没有那么直接”
模板
无法从文件(const char*fname)中读取
{
电视
IFF流(“data.txt”);
f>>v;
返回v;
}
...
字符串dat=从_文件(“data.txt”)读取_;
但是,如果您只有一个数据条目,那么这种方法就不能很好地工作[当然,如果有一个带有操作符的结构或类,那么简短的回答是“否”
较长的答案是,“你可以做一些能做到这一点的事情,但远没有那么直接”
模板
无法从文件(const char*fname)中读取
{
电视
IFF流(“data.txt”);
f>>v;
返回v;
}
...
字符串dat=从_文件(“data.txt”)读取_;
但是,如果您只有一个数据项,那么这种方法就不能很好地工作[当然,如果有一个结构或类具有运算符no,但是根据f
是什么和有什么,可能还有另一种方法。声明一个函数怎么样?@catscradel这可能是个好主意,比如readLine(f)
。如果你把它作为一个答案发布,我会投反对票。但是,根据f
是什么和拥有什么,可能还有另一种方法。声明一个函数怎么样?@catscradel这可能是个好主意,比如readLine(f)
。如果你把它作为一个答案发布,我会投反对票
template <typename T>
T read_from_file(const char *fname)
{
T v;
ifstream f("data.txt");
f >> v;
return v;
}
...
string dat = read_from_file("data.txt");