`
panxq0809
  • 浏览: 296796 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

C++ / vs 如何生成自己的静态库(lib)文件

阅读更多

打开VS2005,建立一个win32控制台程序,然后打开项目--LibTest属性(如图1),打开LibTest属性页(如图2),在右边配置类型处选择静态库(lib)。
然后我们就可以写我们的头文件和cpp源文件了。写完后编译下就可以在目录下找到相应的lib文件了。
图一

图二
      在这里我首先写一个比较简单的库文件,头文件内容是:

#ifndef MYLIB_H
#define MYLIB_H
class myclass
{
public:
    myclass()
    {
        x 
= 0;
        y 
= 0;
    }
    
~myclass(){}
    
void show();
private:
    
int x;
    
int y;
};
#endif

源文件是:

#include "mylib.h"
#include 
<iostream>
using namespace std;

void myclass::show()
{
    cout
<<"x:"<<x<<endl;
    cout
<<"y:"<<y<<endl;
}

    编译后即可生成LibTest.lib(其中LibTest是项目的名称),既然我们生成了自己的库文件,那么我们怎么利用我们的库文件呢,使用方法跟我们用其他的库文件方法是一样的,都需要三个步骤:1.包含必要的头文件。 2.链接相应的库文件。 3.使用库文件

比如我在另外一个项目中要使用我刚写的LibTest.lib库文件,为了方便,我可以把mylib.h头文件和LibTest.lib库文件复制我新建项目的目录下,然后写如下文件:

#include "mylib.h"
#pragma comment(lib,"LibTest.lib")//链接库文件

int main()
{
    myclass aa;
    aa.show();
    
return 0;
}

输出结果为:
x:0
y:0
试验成功。

分享到:
评论
2 楼 judim 2014-08-06  
#include "mylib.h"
是哪里的头文件?是 LibTest.lib 中的?还是新项目中的?
1 楼 judim 2014-08-06  
我怎么试到没有用呢

相关推荐

    QT/c++/c qrencode.lib静态库、二维码生成

    qrencode已编译出来的lib静态库(二维码生成),直接导入qrencode.lib和qrencode.h即可使用。。。网上的很多demo或者都是官方的项目,又要编译又大部分有错的。所以放上来方便大家。

    C++ newmat矩阵库+静态库与动态库的生成与使用

    这个项目是笔者用来学习 静态库和动态库 的时候所建,基于 newmat 矩阵库,详细的操作可以参考博文[『C++ 静态库与动态库的生成和使用:基于 VS Studio 生成 newmat 矩阵库的静态库与动态库』]...

    VS2017 64位 VTK-8.2.0编译生成库 静态库 动态库 lib文件和dll文件

    在标题和描述中提到的是使用Visual Studio 2017(VS2017)64位环境编译的VTK-8.2.0版本,该版本包含了静态库和动态库,以及所需的lib文件和dll文件。 首先,我们要理解编译环境的重要性。VS2017是微软提供的一个...

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

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

    VS2017 32位 VTK-9.0.1编译生成库 静态库 动态库 lib文件和dll文件

    总结来说,这个资源为使用VS2017 32位环境的开发者提供了VTK-9.0.1版本的完整库文件,包括编译好的静态库和动态库,以及对应的头文件,使得开发人员能够轻松地在C++项目中集成VTK,实现复杂的3D图形渲染和数据可视化...

    zxing C++ 生成识别二维码库 32位/64位静态编译库

    静态库文件位于“lib”文件夹中,分为32位和64位两个版本。对于Windows平台,32位库通常以“lib”为前缀,后跟库名,如"libzxing.lib";64位库则可能有“x64”前缀,如"x64\libzxing.lib"。在Visual Studio项目中,...

    Qt下使用C++调用静态库及动态库示例程序

    使用简单的程序展示了C++调用动态库和静态库的方法。 文件结构: exe:笔者部署可运行文件,因开发环境版本不同,可能存在无法直接使用的情况,两个部署文件(copy_ldd.sh及useLib1.sh)可以结合文章分享的(ubuntu下...

    dpdk静态库编译lib-dpdk.lib

    DPDK默认生成的静态库文件可能不是`lib-dpdk.lib`这个名字,所以需要将所有必要的静态库合并成一个名为`lib-dpdk.lib`的文件。这可以通过`ar`工具完成,例如: ``` ar -crs lib-dpdk.lib librte_eal.a librte_...

    VS2017 32位 VTK-8.2.0编译生成库 静态库 动态库 lib文件和dll文件

    静态库(.lib文件)在编译时会被链接到目标程序中,形成一个单独的可执行文件,不依赖外部库文件。动态库(.dll文件)则在运行时被加载,多个程序可以共享同一份库文件,节省系统资源。本压缩包包含了这两种类型的库...

    C/C++二维码生成动态库(使用非常简单)

    静态库(.lib或.a文件)则包含了所有必要的代码,不需要在运行时链接到外部库,适合那些需要完全独立运行的程序。 使用这些库时,开发者需要遵循以下步骤: 1. 解压库文件,了解库的包含文件(头文件.h)和库文件...

    WinCE中C++调用静态库Lib

    在Windows CE (WinCE) 操作系统环境下,开发C++应用...总之,调用WinCE中的C++静态库涉及到创建库项目、定义接口、实现功能、配置应用项目以及正确链接。理解这些步骤对于在WinCE环境中构建高效的应用程序至关重要。

    PDFlib-9.1.0-MSWin64-C-C++.zip_PDFLib库文件_PDFlib 9_WWW、64c、cc_c9.

    PDFlib库文件是用于开发应用程序的核心工具,它允许程序员通过编程接口(API)直接生成PDF文档,无需了解PDF格式的复杂细节。PDFlib 9.1.0是这个库的一个特定版本,专为Windows 64位操作系统设计,并且支持C和C++...

    C++ protobuf debug release动态库和静态库

    这将生成.lib文件(静态库)和.dll文件(动态库)。 5. **使用protobuf库**: 在你的C++项目中,你可以链接这些库文件以使用protobuf的功能。对于动态库,你需要确保运行时环境包含了相应的.dll文件;对于静态库,...

    VC6静态链接库(LIB文件)的创建、使用

    在Microsoft Visual C++ 6.0 (VC6) 中,静态链接库(LIB文件)是一种重要的编程资源,它包含了预编译的函数和类,可供其他应用程序在编译时直接集成,无需运行时动态链接。下面我们将深入探讨如何创建和使用VC6中的...

    Keil生成lib文件

    值得注意的是,lib文件的使用不仅限于Keil,许多其他编译器也支持这种静态库格式。然而,由于不同平台和编译器可能有差异,确保库文件的兼容性是开发者需要关注的问题。同时,动态链接库(.dll或.dylib等)提供了另...

    VS2017 64位 VTK-9.0.1编译生成库 静态库 动态库 lib文件和dll文件

    - 需要链接生成的.lib文件到你的项目中,如果使用的是静态库,链接器会将VTK的代码集成到你的可执行文件中;如果是动态库,运行时需要确保相应的.dll文件在系统路径中可找到。 5. **三维渲染与图像处理**: VTK...

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

    静态库(.a 或 .lib)是在编译时将库代码直接嵌入到目标程序中,形成一个完整的可执行文件;而动态库(.so 或 .dll)则是在运行时被加载,多个程序可以共享同一份库资源,节省内存。在CMake中,我们可以方便地管理和...

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

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

    QT调用VS生成的C++库

    要实现QT调用VS生成的C++库,主要涉及以下步骤: 1. **构建VS库**: 在Visual Studio中创建C++项目,编写你需要的库函数。然后配置项目属性,选择静态库(.lib)或动态库(.dll)的生成方式。确保在生成库时选择相应...

    android 简单demo实现将c++代码 编译成静态库和动态库

    本教程将指导你如何在Android Studio中创建一个简单的Demo,实现将C++代码编译成静态库(.a)和动态库(.so)。 一、环境准备 确保你已经安装了Android Studio,并且版本支持C++开发(自2.1版本开始,Android Studio...

Global site tag (gtag.js) - Google Analytics