FIX 4.0 Demo 1.0
Loading...
Searching...
No Matches
config.hpp
Go to the documentation of this file.
1
9#pragma once
10
11#include <string>
12#include <unordered_map>
13#include <mutex>
14
15namespace fix40 {
16
34class Config {
35public:
40 static Config& instance();
41
50 bool load(const std::string& filename);
51
59 std::string get(const std::string& section, const std::string& key, const std::string& default_value = "");
60
68 int get_int(const std::string& section, const std::string& key, int default_value = 0);
69
77 double get_double(const std::string& section, const std::string& key, double default_value = 0.0);
78
79private:
80 Config() = default;
81 ~Config() = default;
82 Config(const Config&) = delete;
83 Config& operator=(const Config&) = delete;
84
90 std::string trim(const std::string& str);
91
93 std::unordered_map<std::string, std::unordered_map<std::string, std::string>> data_;
95 std::mutex mutex_;
96};
97
98} // namespace fix40
线程安全的 INI 配置文件解析器(单例模式)
Definition config.hpp:34
static Config & instance()
获取 Config 单例实例
Definition config.cpp:13
double get_double(const std::string &section, const std::string &key, double default_value=0.0)
获取浮点数类型的配置值
Definition config.cpp:86
int get_int(const std::string &section, const std::string &key, int default_value=0)
获取整数类型的配置值
Definition config.cpp:74
bool load(const std::string &filename)
从文件加载配置
Definition config.cpp:28
std::string get(const std::string &section, const std::string &key, const std::string &default_value="")
获取字符串类型的配置值
Definition config.cpp:62
Definition matching_engine.hpp:23