1,使用No!Flash这个软件,对是否允许网页显示Flash进行切换以后,无法使用Ctrl+N的方式打开新的IE窗口立即看到Flash或者立即屏蔽Flash。这是IE对ActiveX的显示与否作了改变。
2,新的firewall对UDP通信的防护没有原来的版本严格。我开发的一个使用了UDP通信的远程画笔软件可以毫无问题地穿过SP2的firewall。而在原来XP环境下,则根本无法这样做。我不清楚这是否是SP2的漏洞,但我觉得这样很危险。
重粒子@不要相信任何firewall
如果你使用VSS管理你的源程序,那么可以程序开头加上这样的注释
/*
* $Header: $
*
* $History: $
*
*/
然后打开VSS的Admin管理程序,在「工具」->「选项」的第一个Page的第2个textbox处添上你的源程序的后缀,比如:*.cpp,*.h
今后的版本信息,文件名,更新时刻都会自动作为添加到你程序里了。
$Header: $这样的keyword有好几个,而且也不一定要放到注释里。比如VSS的Help里说可以这样用
Last modified on <!--$$JustDate:--!> <!--$-->
灵活应用这个技巧,你可以做得更好。
1,左值,右值
我们知道对一个变量付值可以这么写
i = 7; // Correct. A variable name, i, is an l-value.
而
//7 = i; // C2106. A constant, 7, is an r-value.
是不对的。
也许你并不知道可以这么用
((i < 3) ? i : j) = 8; // Correct. Conditional operator (? :)
// returns an l-value.
根据 i 的初始值不同,8要么付给 i ,要么付给 j
2,2的幂
我们知道C++里求一个数的幂可以这么做
double x = 2.0, y = 3.0, z;
z = pow( x, y );
也许你不知道如果是求2的整数次方的话有更简单的方法
int y=3,z;
z=1<<y; //相当于(int)pow(2.0, y);
当然你要注意结果不要溢出。
3,使用移位来求一个整数的乘2的倍数,除2的倍数
这个Tip可以说很多教科书里都写了,我就不重复了。