Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.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++ .dat文件中的全局常量_C++_Constants - Fatal编程技术网

C++ .dat文件中的全局常量

C++ .dat文件中的全局常量,c++,constants,C++,Constants,我有一个名为“Values.dat”的文件,其中包含几个参数值,我必须在代码中用作全局常量。为此,我创建了一个头文件“Parameters.h”: \ifndef\u参数_ #定义参数_ #包括 结构参数{ 双A; 双B; //其他参数 参数(){ std::ifstream文件输入(“Values.dat”); 文件输入>>A; 文件输入>>B; //读取其他参数 } }; 常数参数Par; #恩迪夫 然后用PAR.A、PAR、B等……< /P>访问参数值。 我认为这不是一个非常聪明的方法,

我有一个名为“Values.dat”的文件,其中包含几个参数值,我必须在代码中用作全局常量。为此,我创建了一个头文件“Parameters.h”:

\ifndef\u参数_
#定义参数_
#包括
结构参数{
双A;
双B;
//其他参数
参数(){
std::ifstream文件输入(“Values.dat”);
文件输入>>A;
文件输入>>B;
//读取其他参数
}
};
常数参数Par;
#恩迪夫

然后用PAR.A、PAR、B等……< /P>访问参数值。 我认为这不是一个非常聪明的方法,使常数的参数,我有,但我想不出任何其他方式。。。你有什么建议吗? 我有性能问题,不能使用c++11,因为我使用的是一台非常旧的机器,无法升级

对不起,我的英语不好


提前感谢

如果您的机器性能太差,无法将gcc更新为使用C++11,您将面临更紧迫的问题。除非这是hw
\u参数
是实现保留标识符,否则不能使用。
#ifndef _PARAMETERS_
#define _PARAMETERS_

#include <fstream>

struct Parameters {
  double A;
  double B;
  //other parameters
  Parameters() {
   std::ifstream FileInput("Values.dat");
   FileInput >> A;
   FileInput >> B;
   //read other parameters
  }
};

const Parameters PAR;

#endif