ConfigEngine使用示例

2021-05-01 21:54:01 字數 994 閱讀 4554

configengine使用示例

簡要過程如下:

步驟3: 編寫你的配置定義檔案 raw.f。

步驟4: 呼叫confengine裡的genconf.py編譯raw.f,生成raw.h.

第一步,定義需要的配置項,儲存在raw.f

raw.f檔案的解釋如下:

第三列為預設值。注意列是由空白分開的,所以如果預設值中包含空格的話(字串型別),就需要用雙引號包含起來。類似長路徑名的處理。

第四列是可選的,表示注釋項。注意這是最後一項,因此不再考慮空白區分,所有第三列以後的剩餘內容,都認為是第四列的。

目前只支援s, b, n三種型別,大概可以涵蓋絕大部分的用途了。

第二步,呼叫confengine編譯raw.f。  如:e:/confengine/genconf.py   e:/dev/marvel/raw.f

第三步,享受你輕便簡潔的配置訪問功能。

不止是讀取這麼簡單,你還可以修改它:

或者在彈出系統選項設定對話方塊時,你還可以提供乙個復位(恢復預設值)的按鈕,同樣很簡單。只需要呼叫配置項的reset即可:

或者你不想挨個復位每個配置項,你可以一次復位乙個層次的所有配置項,如:

或者呼叫頂層的reset,復位所有的配置項:

在修改了你的配置,或者復位了一些項之後,你需要將配置儲存到配置檔案中。

你可以呼叫:

儲存乙份全域性配置檔案。 也可以僅僅是儲存使用者修改部分,作為使用者配置檔案,如:

使用者配置檔案可以不帶路徑,預設是在.exe所在目錄下。但是帶完整路徑也是可以的。

後記,看看終端使用者看到配置檔案是什麼樣子的:

ConcurrentHashMap使用示例

concurrenthashmap是併發效率更高的map,用來替換其他執行緒安全的map容器,比如hashtable和collections.synchronizedmap。實際上,併發執行時,執行緒安全的容器只能保證自身的資料不被破壞,但無法保證業務的行為是否正確。錯誤的理解這裡的執行緒安全,不恰...

boost share ptr智慧型指標使用示例

12 3456 78910 1112 1314 1516 1718 1920 2122 2324 2526 2728 2930 3132 3334 3536 3738 3940 4142 4344 4546 4748 4950 5152 5354 5556 5758 5960 6162 6364 6...

sqlalchemy 的 Core 方式使用示例

知乎 sqlalchemy 的 core 方式運算元據是一種怎樣的體驗?答 爽!基本步驟如下 from sqlalchemy import create engine engine create engine sqlite memory echo true conn engine.connect f...