同样是最基本的调用方法小例,希望能带来参考,感谢!

创建静态库

编辑头文件

myLib.h:

#pragma once

#include "stdafx.h"

int add(int a,int b);

class MyClass {
public :
MyClass() {}
~MyClass (){} int val; int Getval(int a); };

stdafx.h:

// stdafx.h : 标准系统包含文件的包含文件,
// 或是经常使用但不常更改的
// 特定于项目的包含文件
// #pragma once #include "targetver.h" #define WIN32_LEAN_AND_MEAN // 从 Windows 头中排除极少使用的资料 // TODO: 在此处引用程序需要的其他头文件

targetver.h:

#pragma once

// 包括 SDKDDKVer.h 将定义可用的最高版本的 Windows 平台。

// 如果要为以前的 Windows 平台生成应用程序,请包括 WinSDKVer.h,并将
// 将 _WIN32_WINNT 宏设置为要支持的平台,然后再包括 SDKDDKVer.h。 #include <SDKDDKVer.h>

编辑实现方法

myLib.cpp:

#include "stdafx.h"
#include "myLib.h"
int add(int a, int b)
{
return a + b;
} int MyClass::Getval(int a)
{
return a * a;
}

stdafx.cpp:

// stdafx.cpp : 只包括标准包含文件的源文件
// mylib_1.pch 将作为预编译标头
// stdafx.obj 将包含预编译类型信息 #include "stdafx.h" // TODO: 在 STDAFX.H 中引用任何所需的附加头文件,
//而不是在此文件中引用

检查配置

配置选项选【静态库.lib】,点击生成即可生成对应lib静态库。

创建EXE

编辑头文件

myLib.h:

#pragma once

#include "stdafx.h"

int add(int a,int b);

class MyClass {
public :
MyClass() {}
~MyClass (){} int val; int Getval(int a); };

stdafx.h:

// stdafx.h : 标准系统包含文件的包含文件,
// 或是经常使用但不常更改的
// 特定于项目的包含文件
// #pragma once #include "targetver.h" #include <stdio.h>
#include <tchar.h> // TODO: 在此处引用程序需要的其他头文件

targerver.h:

#pragma once

// 包括 SDKDDKVer.h 将定义可用的最高版本的 Windows 平台。

// 如果要为以前的 Windows 平台生成应用程序,请包括 WinSDKVer.h,并将
// 将 _WIN32_WINNT 宏设置为要支持的平台,然后再包括 SDKDDKVer.h。 #include <SDKDDKVer.h>

编辑实现方法

mytest11.cpp:

// mytest11.cpp: 定义控制台应用程序的入口点。
// #include "stdafx.h"
#include "windows.h"
#include "myLib.h"
#include "iostream"
int main()
{
MyClass myc ; std::cout << add(5,6) << std::endl;
std::cout << myc.val << std::endl; std::cout << myc.Getval(8) << std::endl;
system("pause");
return 0;
}

stdafx.cpp:

// stdafx.cpp : 只包括标准包含文件的源文件
// mytest11.pch 将作为预编译标头
// stdafx.obj 将包含预编译类型信息 #include "stdafx.h" // TODO: 在 STDAFX.H 中引用任何所需的附加头文件,
//而不是在此文件中引用

检查配置

注意静态库lib放入开发环境目录中,配置选择【应用程序.exe】即可生成。

结果

正常情况下双击运行exe可的以下结果:

C++最基本调用静态库的方法小结的更多相关文章

  1. golang 编译或链接 c语言动态、静态库的方法, golang 与 c语言 相互调用

    1.golang链接c静态库的方法可以见这个示例: https://github.com/atercattus/go-static-link-example https://github.com/sh ...

  2. # 2017-2018-2 20155228 《信息安全系统设计原理》 使用VirtualStudio2008创建和调用静态库和使用VirtualC++6.0创建和调用动态库

    使用virtual c++ 6.0创建和调用动态库 不得不说一下关于环境的问题 只要我打一个响指,一半的安装在win7上的VC6.0都会因为兼容性问题直接崩掉 懒得研究怎么解决兼容性的问题了,直接开一 ...

  3. Xcode6.1标准Framework静态库制作方法。工程转Framework,静态库加xib和图片。完美解决方案。

    http://www.cocoachina.com/bbs/read.php?tid-282490.html Xcode6.1标准Framework静态库制作方法.工程转Framework,静态库加x ...

  4. python通过swig调用静态库

    swig - Simplified Wrapper and Interface Generator swig可以支持python,go,php,lua,ruby,c#等多种语言的包裹 本文主要记录如何 ...

  5. Compaq Visual Fortran生成静态库的方法及使用

    Compaq Visual Fortran 6.5生成lib静态库详细方法: 打开Compaq Visual Fortran,新建Fortran Static Library工程,命名为ForLib: ...

  6. C#调用js库的方法

    前言 用.net6开发一个Winform程序,处理Excel文件,并把结果导出Excel文件. 要用到两个算法,一是turf.js库的booleanPointInPolygon方法,判断经纬度坐标是否 ...

  7. QT 4.8 静态库编译方法

    最最初踏上QT之路是受到了XiaomaGee的指点,相比于常规的窗口程序开发,QT有着以下特点: 1. 优良的跨平台特性(支持Win.Linux.Mac 不同的平台下只需重新编译即可使用) 2. 面向 ...

  8. [转]QT 4.8 静态库编译方法

    最最初踏上QT之路是受到了XiaomaGee的指点,相比于常规的窗口程序开发,QT有着以下特点: 1. 优良的跨平台特性(支持Win.Linux.Mac 不同的平台下只需重新编译即可使用) 2. 面向 ...

  9. NDK 链接第三方静态库的方法

    将NDK编译的第三方静态拷贝到JNI目录下,在Android.mk中添加如下代码 以openssl静态库(libcrypto-static.a)为例 第一种链接方法:LOCAL_LDFLAGS := ...

  10. vc6.0里使用lib(静态库)的方法

    vc6.0 中使用lib文件 使用库的方法如下:1. 包含库的头文件(把库的头文件包含到项目中)在应用程序工程中使用#include "file path"file path可以为 ...

随机推荐

  1. Flutter之GetX之GetBuilder

    Flutter之GetX之GetBuilder GetX是Flutter的一个非常强力的三方库,包含了非常多的功能,比如状态管理.路由管理.国际化.路由中间件.主题.数据库等等 今天简单介绍一下状态管 ...

  2. 通过云主机调用API,一键训练部署商品问答模型

    本文分享自华为云社区<[开发者空间实践指导]CodeArts IDE调用API训练商品问答模型>,作者:开发者空间小蜜蜂. 一.案例介绍 在电子商务领域,售前和售后服务是确保客户满意度和提 ...

  3. consul discovery prefer-ip-address

    spring.cloud.consul.discovery.prefer-ip-address: 'true'

  4. Qt数据库应用5-海量数据多线程导出

    一.前言 做数据导出,少量的数据比如10W级别以下的,基本上直接占用主线程也是很快的就可以处理完,上了百万级别的数据量以后,就会发现性能极速下降,很容易卡主整体界面,于是这部分处理必须要用到线程,本数 ...

  5. Qt编写地图综合应用7-百度离线地图

    一.前言 离线地图的核心其实就是拿到这些瓦片地图文件,并不是离线地图的代码怎么写,其实离线地图的网页代码和在线地图的网页代码几乎一致的,主要就是将对应的依赖的js文件从在线的地址改成本地的地址,然后可 ...

  6. Web网页端IM产品RainbowChat-Web的v6.0版已发布

    一.关于RainbowChat-Web RainbowChat-Web是一套Web网页端IM系统,是RainbowChat的姊妹系统(RainbowChat是一套基于开源IM聊天框架 MobileIM ...

  7. 零基础Windows Server搭建部署Word Press 博客系列教程(1):从萌新到菜鸡之云主机配置与备案

    不知道这个教程能帮助到多少想要长期建站的新手朋友. 下面进入正题.如果你想搭建一个基于wordpress的个人博客或者网站,但是不懂Linux,也没有命令行的操作经验,更不懂复杂的代码,那么找这篇文章 ...

  8. 冷水机超频AMD 2600X 4.5G

    整个测试大概持续了一个半小时,期间水温保持在2度左右(±1摄氏度).后来开始冷凝,而且超频也到了4.5G瓶颈,所以停了下来. 全核4.4G过R154.5G过CPU-Z认证(点击查看)温度表现,一般吧. ...

  9. 在 .NET 9 中使用 Scalar 替代 Swagger

    前言 在.NET 9发布以后ASP.NET Core官方团队发布公告已经将Swashbuckle.AspNetCore(一个为ASP.NET Core API提供Swagger工具的项目)从ASP.N ...

  10. Solution Set - “让朝阳洒向晚霞,在星空下涂鸦”

    目录 0.「UR #12」「UOJ #182」a^-1 + b problem 1.「NOI Simu.」点 2.「集训队互测 2023」「QOJ #5100」卡牌游戏 3.「NOI Simu.」简单 ...