作者donkeychen (Bad_To_The_Bone)
看板Programming
标题[问题] 请教程式内查对照表的效率问题
时间Thu May 15 10:48:00 2014
大家好
如果有一个enum 宣告
在呈现到UI前要做1-1对照的动作
(分别要对应到人类可读的资讯message)
想请教一下
下面两种做法的比较
方法1.
宣告一个 资料型态 来储存这个1-1对应
要执行UI输出时 直接从此资料型态直接找到对应的message
方法2.
以sub function 里面根据enum 来 switch_case/ if_elseif 写出这1-1的对应
要执行UI输出时 呼叫sub function用判断的方式
return message
以coding来说大概都免不掉把整个对照表写到source code里面
想请教一下两种方式执行效率/记忆体使用上
是否是
方法1: 一直占着记忆体, 执行效率较好
方法2: 记忆体有用到才用, 执行效率较差
还是说其实没差呢 (不是太清楚 OS或compiler 会不会对这个加以最佳化)
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 210.59.147.226
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Programming/M.1400122083.A.65F.html
※ 编辑: donkeychen (210.59.147.226), 05/15/2014 10:48:27
1F:→ azureblaze:以你的用途而言差距可忽略 114.36.230.200 05/15 10:58
2F:→ azureblaze:或者说整个功能的成本都可忽略 114.36.230.200 05/15 10:59
3F:推 chchwy:就算有差 差距也是极小 不要卡在这种小地方 219.85.166.74 05/15 11:18
4F:→ azureblaze:就算差非常多 你每秒会用他几次? 114.36.230.200 05/15 12:06
5F:→ azureblaze:如果你没办法用直觉决定 别想效率问题 114.36.230.200 05/15 12:07
6F:→ azureblaze:除非他确实已经太慢了 114.36.230.200 05/15 12:07
7F:推 RealJack:没什麽差别吧,方法2也是一直占记忆体 111.251.47.103 05/15 15:18
8F:→ RealJack:因为不是从外部档案读取的 111.251.47.103 05/15 15:19
感谢大家的建议
※ 编辑: donkeychen (210.59.147.226), 05/15/2014 15:43:02