- 博客(160)
- 资源 (23)
- 收藏
- 关注
原创 windows下安装emsdk
这里的emsdk 命令 其实就是一个emsdk.bat的批处理文件。就会在控制台看到输出的“Hello, world!git pull 更新到最新代码。成功后在浏览器中输入。
2023-05-17 21:54:15
1928
原创 C++ libcurl获取网络文件大小
3.从下载文件url中分割出文件名称。6.获取appdata目录。2.获取本地文件大小。4.判断文件是否存在。
2023-05-10 21:59:49
787
原创 VS2019拷贝网络上的源码因为编码问题编译出错的解决办法
1.首先 , 我们很多时候会在网上搜索相应的代码解决方案,但是有的代码拷贝下来是utf8的编码。放到vs中就会出现有些字符显示不出来的问题,因为显示不出来 所以删除不了,因此编译出错。拷贝下来的代码不要直接放进vs里面去编辑,而是通过notepad++去打开,如下图。这些都是需要删除的,否则编译会爆出各种莫名其妙的错误。删除干净了,只要代码写的没问题编译基本上能过。老实说哪里缺少分好;这里有一个解决方案。
2023-05-10 21:38:33
456
原创 python 网络接口测试(post)
如果说requests报错,不存在,那么就得pip安装一下。当然先得安装了python , (python3)## 你可以看看 content-type 字段。# 注意这里必须以json字符串构造数据。# 与 get 请求一样,r 为响应对象。
2023-05-04 17:52:03
551
原创 Cmake转换vs2017和vs2019的区别
D后面跟的是CMakeLists.txt 中的 option 选项。build_win32 表示 生成的vs2017工程放在这个目录。还有其他架构下:(ARM)
2023-03-29 20:56:11
524
原创 cmake之命令行转换vs工程
DTEST_ENABLE=1 便是TEST_ENABLE开关打开,在CMakeLists中用option制定的选项。上面的命令表示 转换成 vs2019 目标工程文件放在 根目录下的 build_x64 目录。更多用法 可以 cmake /help 自己去探索。在根目录下进入cmd 命令行 执行如下命令。
2023-03-24 09:19:06
728
原创 cmake常用脚本语句命令
aux_source_directory(./include DIR_HEADS) #aux_source_directory 命令只是用来查找源文件,对头文件无效。#aux_source_directory(./include DIR_HEADS) #aux_source_directory 命令只是用来查找源文件,对头文件无效。# 这个对应VS工程属性中C/C++西面的附加包含目录 注意不是VC++中的包含目录。# 这个对应VS工程属性中C/C++西面的附加包含目录 注意不是VC++中的包含目录。
2023-03-24 09:16:16
394
转载 [C++]如何判断exe和dll文件是debug还是release编译生成的
debug模式的dll和exe,VCRUNTIME.DLL文件名后面多一个字母D;release模式下则没有D。的dll和exe,图标右边都有一个“64”字样的小图标;x86架构的图标右边是空白。
2023-03-22 22:03:03
1694
原创 zlib和curl的windows vs工程编译方法
点击左下角的configure可以配置 目标工程师vs2019还是其他的vs工程(比如vs2019,vs2017等等)一个是curl源码的根目录(里面有CMakeLists.txt文件),一个是存放转换后vs2019工程的目录。根目录下面会有一个CMakeLists.txt文件, 这个是cmake的配置文件,跨平台的构建配置文件。配置后 右下角有进度条,进度条走完后,点击左下角的generate即可转换成vs2019工程。我们使用cmake的gui版本,转换成vs2019工程。
2023-03-22 20:00:17
497
原创 HelloWorld CMake CMake中构建静态库与动态库及其使用
这里简单说明一下,FIND_PATH用来在指定路径中搜索文件名,比如:FIND_PATH (myHeader NAMES hello.h PATHS /usr/local/include /usr/local/include/hello)同样,因为这些变量直接为FIND_指令所使用,所以所有使用FIND_指令的cmake模块都会受益。cmake程序的过程",既然是"cmake语言",自然涉及到变量、语法等. 下一节,我们将抛开程序的话题,看看常用的CMAKE变量以及一些基本的控制语法规则。
2023-03-22 19:42:43
378
转载 如何查看dll以及lib文件是32位还是64位
在【键入或选择新平台(P):】处,点击下拉框,并选择 【x64】选项。选择完成后,点击【确定】按钮即可。项目名称上点击右键--> 属性 --> 界面右上角【配置管理器】在【活动解决方案平台(p):】处,点击下拉框,并点击【新建】选项。dumpbin.exe /headers 文件路径。此时,项目中就可以选择32位编译,还是64位编译了。默认新建的功能只有32位编译,还需要添加64位。可借助vs自带工具dumpbin.exe。直接输入:dumpbin.exe。可查看该命令的详情。
2023-03-21 20:13:38
1399
转载 VS 编译出错之文件编码
这是文件编码格式导致的,此时,可以用 EditPlus 批量更改文件编码为 UTF-8 ( 带 BOOM)。虽然 UTF-8 文件可以通过解析,猜测得到编码方式,但是 VS 在这点上不智能,它必须依赖于 BOOM 才能识别出文件为 UTF-8。若在其它环境下新建的源码文件,格式为 UTF-8,会发现编译出错,而且错误信息非常诡异,指向不明显。版权声明:本文为优快云博主「lizhihaoweiwei」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
2023-03-21 15:34:15
233
原创 windows下编译zlib库
任何giyhub上面的工程,只要标准化了CMakelists.txt 都可以这样操作转换。download zip 下载完解压后 ,工程目录里面有CMakelists.txt.利用cmake-gui版本直接将工程转换为对应的vs版本即可。安装完成后,打开cmake-gui界面配置程序。然后打开vs工程编译即可。
2023-03-21 14:53:22
228
原创 windows下编译libcurl
第一步下载源代码,源代码有很多地方可以下载,此处从github下载下载地址:download zip解压zip文件 ,进入winbuild目录开始菜单--进入vs2019(或者其他版本)command prompt,如下在此命令行下面,进入到curl源代码的winbuild目录,执行命令参数说明如下:都可以在winbuild目录下的README.md文件中看到## Build in the console Once you are in the console, go to the winbuild dir
2023-03-21 14:46:53
1367
原创 Cmake的简介和用法
cmake是一种构建工具,一种很方便的跨平台的工具。需要处理CMakeLists.txt 的文本文件,里面编写一些cmaje的脚本命令。可以通过这个工具 , 将CMakelists所在的工程转换成各种vs工程,比如说vs2013,vs2019等等。vs2019中有微软自带的Cmake,可以直接打开CMakelists.txt 文件 进行项目的阅读和编辑。安装cmake,cmkae是一种开源工具。开始进行块注释,并且在块注释的一端与。的时候支持多行注释,以。
2023-03-20 19:39:55
218
转载 【测试】什么是代码覆盖率
常见的编程语言,如Java,C++,Python,JavaScript,PHP和Go等,都有相应的代码覆盖率统计工具。代码覆盖:为了更加全面的覆盖,我们可能还需要理解被测程序的逻辑,需要考虑到每个函数的输入与输出,逻辑分支代码的执行情况,这个时候我们的测试执行情况就以代码覆盖率来衡量,可以理解为白盒覆盖。需求覆盖:指的是测试人员对需求的了解程度,根据需求的可测试性来拆分成各个子需求点,来编写相应的测试用例,最终建立一个需求和用例的映射关系,以用例的测试结果来验证需求的实现,可以理解为黑盒覆盖。
2023-03-01 18:01:06
263
转载 如何保证代码质量
关于架构设计的部分,正在阅读《重构》和《Head First 设计模式》,在这里我总结下最近看到的一些改进代码质量的方法和工具,包括:代码规范、CodeReview、重构、单元测试以及代码覆盖率、findbugs工具。其实,代码覆盖率并不是目标,它只是一种手段,帮助我们寻找项目中存在复杂业务逻辑的地方,而这里,就是可以改进的地方。本质上说,重构是在代码写好之后改进它的设计。代码能用和优秀的代码还有一定距离,findbugs帮助我们提升代码质量,会发现一些具备不良用法的代码、暗藏性能问题的代码等等。
2023-03-01 17:48:20
649
原创 一些好用的工具
C++开发工具clionvscodenotepad++截图工具snipaste录屏工具搜索工具everything代理工具fiddler接口测试工具postman。
2023-03-01 17:45:27
77
转载 C++ 单元测试框架 Google Test (gtest)
https://blog.youkuaiyun.com/A_L_A_N/article/details/106952145
2023-03-01 10:47:44
105
原创 设计模式六大原则(六)----开闭原则
而通过面向对象的继承和多态机制,可以实现对抽象体的继承,通过覆写其方法来改变固有行为,实现新的扩展方法,所以对于扩展就是开放的。我们在设计系统的时候, 不可能设想一次性把需求确定后, 后面就不改变了.这不科学也不现实的. 既然需求是一定会变化的, 那么我们要如何优雅的面对这种变化呢?这里投射出的意思是:需求总是变化的, 可是对于软件设计者来说, 如何才能做到不对原有系统修改的前提下, 实现灵活的扩展. 这就是开闭原则要实现的.对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。
2023-02-28 15:37:02
371
原创 设计模式之单例模式
在拥有共享数据的多条线程并行执行的程序中,线程安全的代码会通过同步机制保证各个线程都可以正常且正确的执行,不会出现数据污染等意外情况。这种方式本身就线程安全,没有多线程的线程安全问题。系统运行中,实例并不存在,只有当需要使用该实例时,才会去创建并使用实例。拷贝构造函数和赋值构造函数是私有类型,目的是禁止外部拷贝和赋值,确保实例的唯一性。单例模式是指在整个系统生命周期内,保证一个类只能产生一个实例,确保该类的唯一性。单例模式可以分为 懒汉式 和 饿汉式 ,两者之间的区别在于创建实例的时间不同。
2023-02-28 15:32:53
214
原创 设计模式之工厂模式
简单来说就是用户要订纽约工厂的披萨,他必须去纽约工厂,想订伦敦工厂的披萨,必须去伦敦工厂。工厂方法的适用场合:现在不光有伦敦工厂,还增设了纽约工厂(仍然是同一等级结构,但是支持了产品的拓展),这两个工厂依然只生产三种类型的pizza:chesse,pepper,greak(固定产品)。抽象工厂的适用场合:不光增设了纽约工厂(仍然是同一等级结构,但是支持了产品的拓展),这两个工厂还增加了一种新的类型的pizza:chinese pizza(增加产品族)。抽象工厂 :用来生产不同产品族的全部产品。
2023-02-28 14:38:41
551
原创 23 种设计模式详解(全23种)
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
2023-02-28 14:29:35
105
原创 qt操作文件以及字符串转换
/QTextStream方法读取速度至少快百分之30。//从文件加载英文属性与中文属性对照表。Qt|将QString字符串写入文件中。String和QString之间的转化。
2023-02-28 10:43:37
802
原创 mac系统常用操作指南
32.编辑配置文件 vi ~/.bash_profile,终端打开文件,按下i键就是编辑,上下左右键切换光标,如果想要退出,如果在编辑模式先按下esc,然后按下Shift + 冒号,否则直接。18.有的时候我们知道一个文件路径,如何快速打开文件夹呢,可以在访达中点击顶部的前往菜单按钮,选择前往文件夹选项,输入路径即可。12.appstore安装应用,获取之后,点击安装,如果是付费的就需要appid输入账号密码,安装成功后就会出现在启动项里面。
2023-02-28 09:45:19
1832
原创 macOs环境变量
做代码开发,各种工具都需要设置系统环境变量,在macos系统里面,设置环境变量与windows的配置过程有很大差别,又因为系统升级原因,导致了一些遗留问题,对于初学用户,不是很容易理解这些内容。~/.bash_profile,~/.bash_login,~/.profile依次加载,如果~/.bash_profile不存在,依次加载后面几个文件;~/.zshrc:设置:source ~/.bash_profile,保证启动shell的时候~/.bash_profile环境变量生效。四、平时会遇到的问题。
2023-02-28 09:45:17
1992
原创 kiwi编码格式简介
Kiwi是一种基于模式的二进制格式,用于有效地编码数据树。它的灵感来自Google的格式,但更简单,编码更紧凑,并且对可选字段的支持更好。前向兼容性:如果新模式的副本与数据捆绑在一起,则旧版本的模式可以选择读取新数据(新模式可让解码器跳过未知字段)。可选字段的存在是可检测到的:对于协议缓冲区,这是不可能的,尤其是对于重复字段。常用值的有效编码:可变长度编码用于数字值,其中较小的值占用较少的空间。复合对象的有效编码: struct功能支持嵌套对象,且编码开销为零。向后兼容性:新版本的架构仍可以读取旧数据。
2023-02-28 08:54:58
291
转载 jsoncpp中json字符串的格式化及非格式化转换
版权声明:本文为优快云博主「Pisces_224」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。之前搞jsoncpp解析时,在将一个json数组整体赋值给一个string变量时,当时调用的是。另,想要string串中的单个字符替换为另一种字符的,传送门在这:点这里。分类专栏: C++ 文章标签: json串格式化/非格式化 c++//方法一:转为格式化字符串,里面加了很多空格及换行符。//方法二:转为未格式化字符串,无多余空格及换行符。//root中写入数据。
2023-02-27 17:15:26
1313
ChangeConfig 用于读写INI文件,方便操作配置选项
2022-06-06
adb工具可用于PC与安卓手机交换文件
2022-03-22
C++11 function 委托机制 观察者模式,适用于界面开发,lambda表达式
2022-03-22
C++智能指针实现(包含拷贝构造,赋值函数,引用解引用重载)
2022-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人