作者yoco315 (眠月)
站内Programming
标题Re: C++在函数中定义const 的阵列来查表
时间Sat Apr 11 15:28:39 2009
※ 引述《sorryChen (陈扬和)》之铭言:
: 问题是,每次这个函数被call时 这个表都要重新被initial一次 而花很多时间
hash_table init_hash_table () {
static hash_table t ;
t.insert(...) ;
t.insert(...) ;
return t ;
}
f () {
const static hash_table ht = init_hash_table () ;
...
}
这样 ht 只会被初始化一次,
所以 init_hash_table() 只会被呼叫一次。
但是传回来的时候会有一些复制成本,
你可以自己尝试用 ref 去避开他。
--
To iterate is human, to recurse, divine.
递回只应天上有, 凡人该当用回圈. L. Peter Deutsch
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.160.107.127