在这个函数中,有两个地方可以进行优化:

  1. 返回值类型的优化:可以将返回值类型从vector<addr_map_t>vector<pair<uint32_t, uint32_t>>改为const vector<addr_map_t>&const vector<pair<uint32_t, uint32_t>>&,这样可以避免进行拷贝构造和析构函数的调用,提高性能。

  2. 函数体的优化:如果m_vec_meet_func_addrm_ins_special_addr是成员变量,那么可以直接返回成员变量的引用,而不是进行拷贝构造。如果不能直接返回成员变量的引用,可以将m_vec_meet_func_addrm_ins_special_addr的类型改为const vector<addr_map_t>const vector<pair<uint32_t, uint32_t>>,然后直接返回成员变量的拷贝,而不需要进行拷贝构造。这样可以减少一次拷贝构造函数的调用。

优化后的代码如下:

const vector<addr_map_t>& Casm_tiny::get_meet_func_addr_table() { return m_vec_meet_func_addr; }

const vector<pair<uint32_t, uint32_t>>& Casm_tiny::get_special_func_addr_table() { return m_ins_special_addr;

优化函数vectoraddr_map_t Casm_tinyget_meet_func_addr_table return m_vec_meet_func_addr;vectorpairuint32_t uint32_t Casm_tinyget_special_func_addr_table return m_ins_special_addr;

原文地址: https://www.cveoy.top/t/topic/iT3n 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录