| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1825 人关注过本帖
标题:关于静态库的制作和使用问题
只看楼主 加入收藏
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
结帖率:77.78%
收藏
已结贴  问题点数:20 回复次数:7 
关于静态库的制作和使用问题
我用的VS2012.静态库做成功以后不会使用,有谁可以好心教教我呢
搜索更多相关主题的帖子: 制作 
2013-05-03 08:40
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:0 
和动态库添加静态库接口一样

项目----属性----活动(选择你当前编译的版本)----配置属性----连接器----命令行
不能输入的地方你可以看到有工程配置好的静态库 *.lib 等
把你要加入的静态库以路径形式输入在下面


然后可以试着使用静态库抛出的变量,成功就没什么问题了。
2013-05-03 09:37
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:0 
testexe.zip (2.81 MB)


工程是2008的,但2012可以导入。
配置和我上面说的一样,路径自己改一下,我的和你的不一样。
需要的lib在生成的EXE文件里
工程代码声明了一个test函数,函数过程在lib里


动态库也依照这种方法
2013-05-03 09:59
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
收藏
得分:0 
回复 3楼 天使梦魔
可以加下QQ吗。。。我对VS的使用不是很清楚,可以利用空闲时间指导一下吗。我现在在按你提供的方法试试
2013-05-03 11:29
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
收藏
得分:0 
回复 3楼 天使梦魔
郁闷。。我资质太差了,还是不太会。。求大神解救。
2013-05-03 11:37
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:20 
都说了改成自己的路径。
联系我的邮箱吧,dreamdev@  QQ在线我也不会处理这些问题,而且也不太可能在线。


静态库唯一的好处是不用像动态库一样做接口抛出,直接声明一个变量或者函数就可以使用。
但不同的编译器由于规则不一样所以lib不通用。
vs2012我没有,只有2008我用2008来做列子。2012应该是一模一样的。

首先打开VS新建工程,为了减少复杂程度选择“win32”里面的“win32项目”,输入一下工程名称和路径
点击“下一步”选择“静态库”然后点击“完成”
targetver.h我把它作为接口抛出的地方,我不知道你那是不是这里
在这个头文件我定义一个函数   void test(void);
接着打开 stdafx.cpp 在里面写下这个函数的过程
#include <iostream>//不要忘了头文件
void test(void)
{
    std::cout<<"学习C++就是为了爆菊花"<<std::endl;
}
然后编译它.编译好后出现提示框用于输入EXE路径来调试,关掉就可以了


继续新建工程,项目是一样的选择“win32”里面的“win32项目”,但这次换成"控制台应用程序"
建立好工程后按ALT+F7
"配置属性"可以打开,下面选择"连接器"同样可以打开,然后选择"命令行"
"附加选项"里输入lib的完整路径,比如静态库工程名叫testlib,工程放在D盘
你就可以输入 D:\testlib\Release\testlib.lib     看看你编译出来的lib实际路径,这里只是比喻
然后在main()的上面声明一下
void test(void);//没错,虽然在静态库里也包含了,但要使用还是要声明
接着在main()函数的里面写上
test();
就完成了
2013-05-03 16:35
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:0 
这样你都不会的话,去弹JJ弹到死!
2013-05-03 16:37
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
收藏
得分:0 
回复 7楼 天使梦魔
呃。我不用弹JJ弹到死了。。成功了
2013-05-03 18:11
快速回复:关于静态库的制作和使用问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024331 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved