下面2种画图方法 那种效率高些?
下面2种画图方法 那种效率高些?
方法一
image b = imagefunction(var)
public image imagefunction(var)
{
return System.Drawing.Image.FromFile(var);
}
方法二
image b =new System.Drawing.Image()
imagefunction(var)
public void imagefunction(var)
{
b =System.Drawing.Image.FromFile(var);
}
------解决方案--------------------我觉得没什么区别 几乎一样
不过第一个代码更科学
方法重用性更高
------解决方案--------------------两个方法,偶觉得方法1的效率更高些,
两个方法区别只是在变量的初始化上,
方法1偶理解的初始化过程是:
a.划分一块空间以保存image,也就是给变量b分配空间
b.把b指向返回的image
方法2的初始化过程是:
a.划分一块空间以保存image,也就是给变量b分配空间,并对新分配的空间进行初始化
b.把b指向返回的image
两者的区别就是在是否对空间进行初始化,
其实不必去计教这一点点的性能损失了。
------解决方案--------------------效率相差不太,可能只相差一个指令
如果要效率,那还是多线程弄好点,可以参照游戏处理的离屏绘制
------解决方案--------------------效率的问题可以忽略不计, 就是内存会浪费点!!
------解决方案--------------------方法一吧
------解决方案--------------------一般都会一笑了之。
如果一定要问,我可以问问第二种写法为什么要额外实例化一个即可被丢弃的 image 对象实例,以及凭什么保证b是方法外的目标对象。
谈效率这么高级的命题,前提最好是写出来的东西比较可行。