创建过程不多讲,这里主要关注一些实际应用问题:
- 代码应该同时考虑32和64位平台兼容情况,数据类型需要区分清楚。
- 交付使用时,应当将dll从CRT中剥离出来,或者拷贝对应的MSVCRTD.LIB,如:MSVCR80.DLL----> vs2005, MSVCR90.DLL---->vs2008, MSVCR100.DLL---->vs2010
- 在项目->属性->c/c++->代码生成里面将运行库修改为debug版本的多线程调试 (/MTd)或Realease版本的多线程 (/MT)。/MT意思就是静态编译VC运行库,静态了之后就不会再依赖CRT(run time library)了。各种动态库的理解见CRT运行时库。
- 同时,应避免使用c++的STL模板类型传参,如string\vector等,应当使用纯C写接口,否则会出现内存方式不一致的情况。
(未完待续)