`
weihe6666
  • 浏览: 446567 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

VS2008生成静态库即调用静态库

    博客分类:
  • C++
C++ 
阅读更多
VS2008生成静态库即调用静态库


这几天老大让我把HDecode的代码封装成库,网上查了查资料,下面是一个简单的函数封装为库(静态库)的实例:

生成lib方法:

步骤一,新建项目Win32 Project->Static library,建立一个头文件Lib.h
#pragma once 
#ifdef __cplusplus 
extern "C" { 
#endif 
 
    int add(int a, int b); 
 
#ifdef __cplusplus 

#endif

步骤二
新建一个源文件如Lib.cpp
#include "Lib.h" 
int add(int a, int b) 

    return a+b; 
}

步骤3:
确定后再编译,这时会在工程所在文件的debug文件夹下产生一个.lib的静态链接库。至此,生成工作完成。


调用lib方法:
  
调用方法有两种:
第一种:项目设置中引用,在项目的属性中设置。
第二种:在代码中使用 #progma comment(lib,"lib文件名");
这里介绍第一种方法。
右键单击项目,有三个地方需要添加lib库的目录和头文件的目录。

步骤一:
右键单击项目—>属性—>配置属性—>链接器—>常规—>附加库目录
在其中填入lib库的目录,也可以是相对或绝对路径。

步骤二:
右键单击项目—>属性—>配置属性—>链接器—>输入—>附加依赖项
在其中填入lib库的名称,如:Test.lib

步骤三:
新建一个控制台应用程序进行测试

#include "stdafx.h"
#include "..\..\Test\Test\Test.h" //注意:这里要include进头文件并且指明路径,或者你可以把头文件直接考到你的工程目录下,并在工程的头文件下把.h文件包含进来,这样只要用 #include “Lib.h”就可以
#include <iostream>
using namespace std;
int main()
{                                                                
     int a = 11, b = 12;
     int c;
     while(1)
     {
         c = add(a, b);
         cout<<c<<endl;

     }
     return 0;

}

分享到:
评论

相关推荐

    Qt静态库的生成及调用

    在 Qt 中,可以生成静态库以便在其他项目中重用代码。本文将详细介绍 Qt 静态库的生成和调用过程。 一、静态库的生成 静态库是指编译后的一个文件,可以包含多个对象文件,它可以在其他项目中被链接和调用。在 Qt ...

    VS2008静态库和动态库的创建和调用

    静态库的创建过程包括创建Win32工程、添加头文件和源文件、编写代码、编译生成静态库文件等步骤。在创建静态库工程时,需要选择Static Library选项,并添加头文件和源文件。在头文件中,需要添加函数声明,而在...

    FORTRAN静态库的生成、维护与调用

    为了在主程序中调用静态库中的子程序,需要在编译主程序时指定静态库的位置。具体步骤如下: 1. **设置编译器路径**:确保编译器能够找到静态库所在位置。这通常可以通过设置环境变量或在编译命令中指定路径来实现...

    ESPIDF 生成静态库链接其他静态库

    当开发者在使用ESP-IDF生成静态库,并需要将这些静态库链接到其他静态库时,他们需要遵循特定的步骤来确保库文件能够正确地工作在一起,实现预期的功能。 静态库是一种在编译时会被完整地包含在最终生成的可执行...

    cmakelists 生成静态库,然后用静态库生成动态库,然后生成测试程序

    本篇将深入探讨如何使用CMakeLists来生成静态库、动态库,并创建测试程序进行验证。 首先,我们要理解静态库和动态库的区别。静态库(.a 或 .lib)是在编译时将库代码直接嵌入到目标程序中,形成一个完整的可执行...

    静态库_动态库生成过程及其调用方法详解

    生成静态库的过程通常包括编译源代码并链接成库。在VS2008中,可以通过创建一个新的“Win32库项目”,选择“静态库”选项来实现。编写好库的源代码后,编译生成.lib文件,这就是静态库。 接下来是动态库(Dynamic ...

    eclipse生成库和调用方式

    完成排除操作后,接下来设置工程以生成静态库。 - **步骤**: - 右键点击工程,选择“Properties”-&gt; “C/C++ Build”-&gt; “Settings”。 - 在“Tool Settings”-&gt; “GCC C Linker”-&gt; “Libraries”中,设置...

    Qt C++静态库编写和调用示例

    总结来说,Qt C++静态库的创建和使用涉及编写库代码、配置项目文件、编译生成静态库以及在其他项目中引用并调用这些库。通过这种方式,你可以有效地组织和重用代码,同时降低应用程序的复杂性。在实际开发中,根据...

    gcc生成静态库和动态库

    ### gcc生成静态库和动态库详解 #### 一、引言 在软件开发过程中,为了提高代码的复用性及维护性,常常需要将一些通用的功能封装成库文件供其他程序使用。根据链接方式的不同,库文件可以分为静态库和动态库。本文...

    如何在vs2008中添加lib 静态库使用

    Visual Studio 2008 中添加静态库的使用 在 Visual Studio 2008 中添加静态库可以通过两种方法实现:使用 `#pragma comment(lib,"XXX.lib")` 指令或在项目设置中添加库文件的路径。在这篇文章中,我们将详细介绍这...

    简单的静态库调用实例

    本文将以“简单的静态库调用实例”为出发点,深入讲解如何创建和使用静态库,并以`.lib`文件作为例子进行说明。 首先,我们要理解什么是静态库。静态库(.lib文件)是编译器在编译源代码时直接链接到目标程序中的库...

    C生成静态库给C++调用出现undefined reference to ...解决方案_cpp

    在C++程序中调用C编译的静态库时,可能会遇到“undefined reference to ...”错误,这通常意味着链接器无法找到对应的函数定义。要解决这个问题,我们需要理解C与C++之间的互操作性以及编译和链接过程。下面将详细...

    openssl和libcurl的静态库(VS2008和VS2010编译)

    **openssl和libcurl的静态库在VS2008与VS2010中的构建** 在软件开发中,`openssl`和`libcurl`是两个非常重要的库,它们广泛应用于网络安全和网络通信领域。`openssl`是开源的SSL/TLS协议实现,提供了加密算法和证书...

    VS2017+QT如何创建和使用静态库.rar

    VS2017+QT如何创建和使用静态库的Demo Code,简单的在QT项目中使用VC的静态库,里面包括了如何创建和使用。 博客地址:https://blog.csdn.net/ZHONGCAI0901/article/details/106886208

    c++ 创建dll(动态库)、static lib(静态库),以及dll的相互调用 示例vs2022工程

    c++ 创建dll(动态库)、static lib(静态库),以及dll的相互调用 示例vs2022工程 sln项目文件在 c++_dll_staticLib\libtest\MathTestLib 目录下 以前有小错误,更新了错误(2023-05-28)

    VS2015 C++ lib静态库的制作以及调用

    解压后资源里有两个文件,一个C++_lib,为在vs2015下制作lib库的工程;另外一个为test,是调用lib库的工程

    VS2008中生成DLL项目及调用

    ### VS2008中生成DLL项目及调用详解 #### 一、概述 ...通过上述步骤,您不仅能够创建DLL项目,还可以理解如何使用和生成静态库。这对于软件开发中的模块化设计非常有用,有助于提高代码的复用性和可维护性。

    FORTRAN静态库的生成、维护与调用[参考].pdf

    七、调用静态库 生成静态库以后,可以用“dumpbin /linkermember libname.lib ” 来查看静态库中可用的子程序名称。也可以执行“lib /list libname.lib ” 来查看静态库中的*.obj文件。 八、在CVF65集成环境下生成...

    C++/ C#生成dll 用C/C#/Python/Unity 调用

    VS2015工程里面通过c++生成静态库lib,C++生成dll用C++工程,python, unity调用对应的dll。C#生成 dll,通过C#和Unity工程调用对应的dll。Python使用的是VS中集成Python. Python调用C#dll时需要通过pip安装python...

Global site tag (gtag.js) - Google Analytics