这篇文章介绍了一些简单的开发技巧,让你在VS上进行Open CASCADE的开发更加得心应手.
1.在代码编辑器中高亮Open CASCADE的类名(PS:当然如果你使用了D版VA的话,VA会自带这样的功能.当然作为开发人员我们还是要支持Z版:)
这样的高亮显示会增强你代码的可读性,同时它会在你编译代码之前对你OCC的类名拼写进行
有效的快速检查,这是非常重要的.如下图所示:
你所需要做的其实很简单,就是将OCC(tools 子目录)下的UserType.dat文件拷贝到devenv.exe所在的目录下.(我电脑的目录是::/Program Files/Microsoft Visual
Studio 8/Common7/IDE/). 如果在该目录下已经存在这样的文件了,就将OCC该文件的内
容copy到已有的文件中.这样就OK啦.
2.在调试状态下更便捷的显示OCC中的数据类型(我个人认为这个小技巧很实用)
不知道你是否有过如下的经历,当你需要查看一张面的引用次数时,你需要在watch窗口中点击
多次,展开很深的树形结构才能查看到具体的引用次数.如果你有过类似的情况,下面这个小技
巧将对你很有帮助.
你可能知道调试器中是可以运行你显示复杂类型的(类如:数据类)而不仅仅是简单的用{...}
代替.为了实现复杂类型数据的显示,你需要自己去描述显示规则,去修改autoexp.dat文件.我
已经找到了一个这样的扩展文件,它可以用来显示最常用的一些OCC的数据类型.你可以来这儿
(http://sourceforge.net/projects/opencascade/files/Miscellaneous/no%20versio
n/)下载并插入到你自己的autoexp.dat文件中,这个文件位于如下目录下: c:/Program
Files/Microsoft Visual Studio 8/Common7/Packages/Debugger/Autoexp.dat
比较如下两个截图.上面一个是在修改autoexp.dat文件之前,而下面那张图显示,数据类型上
有了更多的有效信息,而你不需要多层次的展开树结构.
希望OCC的开发组以后在发布时能把这样的文件包含在其中:)
这里还有另外一个有用的技巧-在调试状态下忽略一些stepping into的函数,这样当你按F11
的时候,它会自动跳过一些你可以忽略的内部函数,这样就可以节约调试时间.这儿介绍了很详
细的操作步骤:http://blogs.msdn.com/b/andypennell/archive/2004/02/06/how-to-not-step-in
to-functions-using-the-visual-c-debugger.aspx.
我没有去尝试,不过大家可以试试看哦.如果你成功了,请把你的设置分享给大家,这样对大家都会很有帮助.
如果有人想分享你的收获请给我留言或者email,我会尽我所能去回复你.
PS:对注册表进行如下的修改就能跳过OCC中Handle_类的operator->,以及Boost库
中smart_ptr的operator->.
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/8.0/NativeDE/StepOver]
"Debugger: do not go into Handle_*::operator ->
()"="Handle_.*//://:operator-//>=NoStepInto"
"Debugger: do not go into boost::shared_ptr::operator ->
()"="boost//://:shared_ptr.*//://:operator-//>=NoStepInto"