ObjectARX二次开发创建自己的静态库,如同objectARX库一样

时间:2024-02-20 18:29:52

objectARX二次开发的时候,经常会用到一些重复使用的类,如果类已经足够的好,那么我们可以编译成静态库,加快开发和编译的速度,提高工作效率。

环境vs2010+objectARX2012wizard,以及各种编译器平台,我这里主要是用v90 编译器平台。

下面就开始添加一个win32项目。

 

在win32应用程序向导中,我们下一步,直接勾选静态库,MFC和预编译头。

项目新建后,设置项目属性。

 

在c/c++选项的预处理器中,我们这里删除_DEBUG,因为这个“预定义"可能会影响一些类的问题,这个因人而异。不一定按此操作

在代码生成这个选项中,将运行库改为多线程dll(/md)模式,保持和arx配置相同。

然后在stdAfx.h头文件中添加arx的头文件 arxheaders.h (这个是关键,他包含了大多数arx头文件,以及lib库,dll导出等)

 

 

 由于新建的win32项目没有x64平台,我们在配置好win32的基本属性后,需要新建一个x64平台
 
 

新建完成后,修改c++的预处理器的预定义win32为_WIN64

如果你的vs没有指定默认的包含和库目录,那么需要在这个vc++目录中添加包含目录和库目录,就如同arx配置中一样。我这里是通过其他方式添加的。

因为我是打算在v90(vs2008平台)平台编译,所以这个编译器平台需要改到v90

然后我们就可以添加以前写的类文件了。类文件一般是头文件和cpp实现文件,我们可以从以前的项目中获得。。

 

 

正常情况下,可以编译成功的。。

自己的arx静态库基本就做好了。。

下面我们来简单测试下。

新建一个arx工程,或者用现有的工程也行。。vc平台要和lib库的平台一致,debug或者release也要一致。

在需要调用静态库的cpp文件中我们包含需要的头文件和定义调用库文件。。

比如

我这里没有写路径,所以要在vc++目录中指定这两个文件的路径,如同arx一样。

下面我们就可以使用静态库中的类了。。

正常情况下,可以编译完成。。

加载完成后运行命令,结果正常。

 

以上就是objectARX制作属于自己的静态库的基本方式,通过这样的方式,我们就可以建立属于自己的arx库。

我们还可以做得更好,比如,我们有很多个类,总不能每一个类都要去写包含和调用库。

实际上我们可以学习arx的方式,写一个myarxlibheaders.h

把所有自己库的头文件包含进去,把lib调用也加入到其中,通过vc版本号的不同,调用不同的库。。release或者debug。