Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 一次声明一个变量并从文件中初始化它_C++ - Fatal编程技术网

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");