📅  最后修改于: 2023-12-03 14:40:59.632000             🧑  作者: Mango
在 EOSIO 中,我们可以使用 C++ 代码来获取当前时间。EOSIO 提供了一种特殊的时间类型 time_point_sec
,可以轻松获取当前时间,以及在合约内进行时间计算。
以下是一个示例代码片段,展示如何在 EOSIO 中获取时间:
#include <eosio/eosio.hpp>
#include <eosio/system.hpp>
using namespace eosio;
CONTRACT time_example : public contract {
public:
using contract::contract;
ACTION get_current_time() {
auto current_time = current_time_point().sec_since_epoch();
print("Current time: ", current_time);
}
};
EOSIO_DISPATCH(time_example, (get_current_time))
代码解析:
current_time_point()
函数用于获取当前时间点,返回 time_point_sec
类型的时间对象。sec_since_epoch()
函数获取时间对象的秒数表示。get_current_time()
action 中,我们调用 current_time_point().sec_since_epoch()
来获取当前时间,并使用 print()
函数进行输出。注意:上述代码是一个简单的示例,仅用于演示如何获取当前时间。实际应用中,我们可以根据需要进行更复杂的时间操作和计算。
使用 eosio-cpp 编译器编译上述合约,并进行部署和调用后,将输出当前时间的秒数表示。