我已经实现了自己的包装器,std::chrono::steady_clock
并希望阻止任何其他开发人员使用原始包装器:
#include <iostream>
#include <chrono>
namespace my_chrono {
class MyClock : public std::chrono::steady_clock {
// stuff here...
};
}
int main()
{
auto my_now = my_chrono::MyClock::now(); // this should compile
auto chrono_now = std::chrono::steady_clock::now(); // this should be prevented
std::cout << my_now.time_since_epoch().count() << ", " << chrono_now.time_since_epoch().count() << std::endl;
return 0;
}
不幸的是,我找不到强制使用MyClock
过度的方法steady_clock
(例如,通过编译器错误或被视为错误的警告)。
您不能使其他代码无法使用您无法控制的内容。C ++标准库是您无法控制的东西。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句