基础问题,局部变量
一、
CString sTemp;
for(int i=0;i<100;o++)
{
sTemp.Format("%d",i);
}
二、
for(int i=0;i<100;o++)
{
CString sTemp;
sTemp.Format("%d",i);
}
这两种哪个快,哪个更省内存呢? 在VC中
[解决办法]
现在不是省不省内存的问题了
你第二种方法就没意义啊,for循环后
你STemp的生命周期就结束了。
只能用第一种
[解决办法]
楼主就是想问变量的定义放在循环内会不会影响效率吧,一般用第一种
[解决办法]
一、char buf[32];for(int i=0;i<100;o++){ sprintf(buf, "%d", i);}二、for(int i=0;i<100;o++){ char buf[32]; sprintf(buf, "%d", i);}
[解决办法]
与编译器的优化有关,第2种会优化为第一种。
[解决办法]
第一种的字符串只会执行一次构造和析构,第二种会执行100次
[解决办法]