随笔分类 - C#手记
摘要:扩展方法之二分查找版本:0.1最后修改:2012-08-08撰写:李现民 近期项目策划案调整,要求程序按音乐时间及位置等条件迅速定位当前游戏角色正在使用的动作,因为查询会非常频繁,因此决定使用二分查找。 C#类库中有二分查找,分散于Array、List、ArrayList等类中,但接口不太另人满意。对简单的整数数组还好,可以直接使用,但对于复杂的查询,默认的类库使用起来就会比较复杂,比如:classAction{publicstringname;publicinttime;publicintposition;}classTimeComparer:IComparer<Action>{
阅读全文
摘要:版本:0.1 最后修改:2012-06-12 撰写:李现民 涉及内容:unity3d, c#, string 前两日,有同事设计游戏连击特效的功能。因为这个功能在游戏环节中会调用的非常频繁,因此顺手点了开来,发现代码设计尚有优化的余地,于是便有了本次尝试。事后回想开来,发现涉及的东西还颇多,便想着记下来以飨后来者。 这是一份unity3d脚本程序,原始脚本文件MBStarCombo.cs代码如下: using UnityEngine; using System; class MBStarCombo : MonoBehaviour { void Start(...
阅读全文
摘要:最近在做unity3d编辑器,使用c#编码。编辑器中有一些图形按方向画出来,但如果源文件中包含非assii字符的话会编译不过,没办法,只好求助unicode字符转义。在网上找到各类箭头方向的unicode编码,备案如下:←Nameleft arrowUnicode2190UTF-8E28690↑Nameup arrowUnicode2191UTF-8E28691→Nameright arrowUnicode2192UTF-8E28692↓Namedown arrowUnicode2193UTF-8E28693↔Nameleft right arrowUnicode2194UTF-8E286..
阅读全文
摘要:熟悉javascript的朋友对Eval()函数可能都不会陌生,我们可以用它来实现动态代码的执行,我自己甚至写过一个网页专门用来计算算术表达式的,计算能力上比google、baidu的计算器还要好一些,至少精度要高,但是如果超出了四则运算的话,表达式的形式会复杂很,比如以百度给出的例子: log((5+5)^2)-3+pi需要写成Math.log(Math.pow(5+5,2))*...
阅读全文
摘要:使用Component编程是一项值得推崇的技术,它既具有可视化的界面编程模式,又不向UserControl那样体积庞大。但是,熟悉UserControl的朋友们都知道,在UserControl类中有一个FindForm()函数,返回UserControl所在的窗体的引用,这将大大方便我们对窗体的控制----尽管这可能有些越俎代庖的味道,但有时我们就需要这种控制能力。 但是,在Comp...
阅读全文