开发平台(Platform): (Ex: Win10, Linux, ...)
win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
VC++
问题(Question):
1. 我有些参数,想要让全部的function都能看的到
但是希望控制其life time
这个问题跟我上一篇很类似
我想要让某个global object里面的object执行某个function
但是因为变量众多,而且我需要执行的次数只需要一次
所以我想说塞到destructor
但是发现因为是global variable,destructor会最后才跑,
我希望我能控制其被执行时间,也就是控制其lifetime
换句话说,我比较想要是local variable(可以控制何时死掉),
但是却想让所以function都看的到
目前想到是
(1) global设一个指标,在function内宣告变量,
并将此指标指向这个local variable
(2) 当成input参数,一层一层往下丢,但是因为包了好几层,这修改起来颇麻烦
优点是可以定义那些function内部不可修改 (前面加const)
2. 想问,一般这种大家都要看的到的系统资料大家是怎么处里的?
我目前的作法感觉是做半套
包成class,宣告成global variable,
利用member function来保护内部资料不可以被随意动到
但是变量一旦很多,每个都要弄成member function来读取,十分麻烦
目前是因为一起开发的人数不多,大家很自律不会乱搞,所以很多都没有另外包
大致上都是大家merge code时候顺便检查
但如果更多人开发,或是不够自律的话,势必还是需要一些保护措施
想问,实务上都是怎么处理?