C++高手修炼营
文章平均质量分 58
跟我一起成为Windows与 Linux平台下的C++编程高手!
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
程序员乐逍遥
15年C/C++开发经验资深程序员、想跟我学编程的可以观看我精心录制的视频课程!
展开
-
Windows 下 cocos2d-x-3.17.2 VS2017开发环境搭建
执行 命令, 交互的地方一直回车即可。自动帮我设置了一些环境变量。2.下载Python2。测试cocos命令和版本。原创 2024-10-12 16:45:17 · 174 阅读 · 0 评论 -
VS2017 编译 SQLite3 动态库
1.安装 VS2017 community edition2.打开VS2017命令行工具3.安装TCL 开发库,推荐 TCL 9.0使用vs2017编译tcl:先进入 tcl9.0.0\win 目录安装安装成功:设置环境变量:进入 VS2017命令行工具 ,进入sqlite3的源码目录会成功生成可能会遇到问题,找不到 gawk命令:我电脑上有一个,直接配置到环境变量即可可能会遇到问题, 编译时报常量错误 error C2065: “zBom”: 未声明的标识符。原创 2024-10-12 15:54:47 · 325 阅读 · 0 评论 -
c_cpp_properties.json文件的作用
IntelliSense 是 VS Code 中内置的一个有用工具,它提供各种代码编辑功能,可帮助您更快、更高效地编写代码。例如,代码完成、参数信息、语法突出显示、代码操作(灯泡)和成员列表都是使用 IntelliSense 生成的。IntelliSense 配置存储在文件中,该文件在您的工作区中自动创建。如何产生 c_cpp_properties.json文件?这里配置一下头文件,就可以自动提示了,以OpenCV为例子。其中的属性可以在界面上改,文件会自动同步。原创 2024-10-10 22:04:37 · 286 阅读 · 0 评论 -
PCL 1.8.1 + VTK 1.8.0 + QT5.14.2+ VS2017 环境搭建
【代码】PCL 1.8.1 + VTK 1.8.0 + QT5.14.2+ VS2017 环境搭建。原创 2024-10-06 16:14:43 · 421 阅读 · 0 评论 -
Qt 5.14.2 +VS2017+ VTK 8.0 + QVTKWidget 插件 运行环境
VS2017 编译,安装。原创 2024-10-06 15:43:35 · 203 阅读 · 0 评论 -
Windows上 minGW64 编译 libssh2库
安装之后,产生如下静态库,安装到MSYS2的 /usr/local 目录下了。编译器使用 Qt 6 自带的 minGW 11.2.0。使用CMake来编译libssh2。来编译 openssl库。里面的 minGW64。原创 2024-10-06 15:26:20 · 48 阅读 · 0 评论 -
Windows上 minGW64 编译 libssh2库
安装之后,产生如下静态库,安装到MSYS2的 /usr/local 目录下了。编译器使用 Qt 6 自带的 minGW 11.2.0。使用CMake来编译libssh2。来编译 openssl库。里面的 minGW64。原创 2024-09-21 21:33:40 · 105 阅读 · 0 评论 -
没有那个文件或目录 #include <bits/libc-header-start.h>
Ubuntu 18.04 编译需要编译32位系统。原创 2024-09-20 11:32:32 · 58 阅读 · 0 评论 -
warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存 为 Unicode 格式以防止数据丢失
使用VS20XX 报了上面这个错误,编码问题导致的!文件编码为gbk,GB312 或者 utf-8withbom源字符集是用于解释程序源文本的编码。原创 2024-09-12 15:27:27 · 401 阅读 · 0 评论 -
wofstream写入文件没有反应的解决方案
使用宽字符字符串是处理中文字符的正确方式,因为它们可以表示任何 Unicode 字符。类在 C++ 中用于定义区域设置,它影响数字、货币、日期和时间的格式,以及字符的分类和比较。在处理中文字符时,设置正确的区域设置是必要的,以确保字符的正确解释和处理。这个名称是依赖于平台的,不同的系统可能有不同的命名规则。作为分隔符,但在 C++ 字符串中,反斜杠是转义字符的开始,因此需要使用双反斜杠。,这是一个表示简体中文的区域设置。类,并添加了对宽字符的支持。是 C++ 标准库中的一个类,用于处理宽字符文件的输出。原创 2024-09-10 19:55:37 · 184 阅读 · 0 评论 -
VSCode 搭配 Windows 下各种 C/C++ 编译器使用
Visual Studio Code(简称 VSCode)是一款由微软开发的免费、开源的代码编辑器,它支持多种编程语言,包括 C 和 C++。VSCode 提供了丰富的扩展和定制功能,使得开发者能够根据自己的需求进行个性化设置。在 Windows 环境下,搭配合适的 C/C++ 编译器,VSCode 能够成为一个强大的开发工具。本文将详细介绍如何在 Windows 系统上安装和配置 VSCode 以进行 C/C++ 开发。原创 2024-08-14 16:51:16 · 399 阅读 · 0 评论 -
C语言动态分配二维数组空间
方法二: 当成一维数组来分配。方法一: 指针的指针。原创 2024-07-31 19:58:04 · 202 阅读 · 0 评论 -
C++ STL中的std::remove_if 的用法详解
是C++ STL中头文件的一部分,它用于从容器中移除所有满足给定谓词(即判断条件)的元素。值得注意的是,并不会直接删除元素,而是将不满足条件的元素移到容器的前面,返回一个新的迭代器指向第一个应被删除的元素。因此,为了完全删除这些元素,我们需要配合容器的erase成员函数使用。假设我们有一个Student类,包含姓名、年龄和成绩等属性,我们的目标是从一个中移除所有成绩低于60分的学生。首先,定义Studentpublic:int score;// 用于输出学生信息int main()原创 2024-07-15 15:38:19 · 296 阅读 · 0 评论 -
使用 iconfont.ttf文件保存多个图标文件,并且像文字一样使用代码绘制出来
这里的多个图标其实是存储在 iconfont.ttf文件中。这个文件里面的图标对应的编码。原创 2024-07-04 21:49:22 · 219 阅读 · 0 评论 -
一种特殊的二叉树 哈夫曼树(Huffman Tree)
哈夫曼树(Huffman Tree)是一种特殊的二叉树,它在信息编码领域有着广泛的应用,特别是在数据压缩技术中。下面我将通过图文结合的方式,详细介绍哈夫曼树的概念、构建方法以及应用场景。哈夫曼树的概念哈夫曼树是一种特殊的二叉树,由David Huffman于1952年提出。它主要用于解决数据编码问题,通过给定字符的频率来构造一棵二叉树,使得树中所有叶子节点的权重之和最小。哈夫曼树的每个叶子节点代表一个字符,而其非叶子节点则用于连接子树。原创 2024-07-03 13:43:23 · 78 阅读 · 0 评论 -
表达式二叉树的应用
表达式二叉树,顾名思义,是一种用于表示算术或逻辑表达式的二叉树。在这样的树中,叶子节点通常代表操作数(数字或变量),而非叶子节点则代表运算符。这种结构使得表达式的求值和优化变得非常直观和高效。表达式二叉树不仅是一种优雅的数据结构,更是连接数学与计算机科学的桥梁。通过本文的介绍,相信你已经对表达式二叉树有了更深入的理解。无论是从理论角度还是实践应用,掌握表达式二叉树都将为你的编程之旅增添一份独特的魅力。在未来的学习和工作中,不妨尝试将这一数据结构应用于实际问题中,体验它带来的便利与效率吧!原创 2024-07-03 09:58:48 · 58 阅读 · 0 评论 -
交叉编译中的 --build、 --host和 --target
在交叉编译中比较常见的一些参数就是build、host和target了,正确的理解这三者的含义对于交叉编译是非常重要的,下面就此进行解释。表示针对 64 位 x86 架构(也称为 AMD64 或 x86_64)的个人电脑上的 GNU/Linux 系统。./configure --build=编译平台 --host=运行平台 --target=目标平台。:表示针对小端字节序的 MIPS 架构的 GNU/Linux 系统。:表示针对 PowerPC 架构的 GNU/Linux 系统。原创 2024-06-30 11:10:38 · 301 阅读 · 0 评论 -
在Ubuntu 18.04.6 LTS 交叉编译生成Windows 11下的gdb 8.1.1
最后在 build/gdb目录下找到你需要的gdb.exe。最后,放到windows 11 下试试效果。2. 下载 gdb 8.1.1源码。产生Makefile文件。1. 安装mingw。原创 2024-06-29 22:39:16 · 270 阅读 · 0 评论 -
高性能STL库 EASTL 、高性能JSON库
兄弟们,对STL要求性能高的可以试试这个EASTL库!原创 2024-06-24 22:41:20 · 132 阅读 · 0 评论 -
VS2022 使用C++访问 mariadb 数据库
【代码】VS2022 使用C++访问 mariadb 数据库。原创 2024-06-12 14:22:48 · 305 阅读 · 0 评论 -
VS2022使用C语言代码访问MariaDB数据库
第三步,配置VS2022。原创 2024-06-12 09:27:17 · 284 阅读 · 0 评论 -
MySQL Connector/C++ 和 MySQL Connector/ODBC 的区别
选择使用哪一个取决于你的具体需求,如果你正在使用C++并且希望获得更好的性能和C++友好的接口,MySQL Connector/C++可能是更好的选择。- MySQL Connector/C++ 提供了面向对象的编程接口,它是用C++编写的,提供了C++特有的类和对象来与MySQL数据库进行交互。- MySQL Connector/ODBC作为基于标准的产品,也有良好的社区支持,但由于它是跨语言的,可能在特定语言环境下的资源不如Connector/C++丰富。原创 2024-06-12 09:18:56 · 440 阅读 · 0 评论 -
软件架构x86 、 x86_64、 arm64、aarch64 、PowerPC架构、MIPS架构、RISC-V架构
RISC是一种执行较少类型计算机指令的微处理器,它能够以更快的速度执行操作,使计算机的结构更加简单合理地提高运行速度,相对于X86 CPU架构具有更加均衡的性能功耗比。,CISC指令集的每个小指令可以执行一些较低阶的硬件操作,指令数目多而且复杂,每条指令的长度并不相同。i386指的是Intel 386处理器的型号,它是Intel x86架构的一部分,而x86是一种广泛使用的处理器架构,用于PC和服务器等设备。(IA-64):由Intel和HP合作开发的处理器架构,用于高性能计算。原创 2024-06-08 16:41:43 · 245 阅读 · 0 评论 -
make 中 DESTDIR 和 --prefix 的区别
这两个示例分别展示了如何使用两种流行的构建系统( + 和 + )来编译和安装软件,并解释了 和 这两个选项的作用。这个命令运行 脚本,它是 生成的,用于检测系统环境并创建适当的 。这里: 指定了软件安装的基本目录。这意味着软件的可执行文件、库文件、头文件等将安装到 目录下及其子目录中。如果不指定 ,则默认安装到 。这个命令使用 工具来编译软件。 是一个选项,表示 可以同时运行8个作业(jobs),这样可以加快编译过程,利用多核处理器的优势。这个命令执行 目标,根据 将编译好的软件安装到原创 2024-06-05 21:51:51 · 237 阅读 · 0 评论 -
GNU Linux 下安装目录的规范
官方链接。原创 2024-06-05 21:27:27 · 154 阅读 · 0 评论 -
Windows Linux下查看静态库,动态库各种命令的总结
【代码】Windows Linux下查看静态库,动态库各种命令的总结。原创 2024-06-05 17:24:17 · 209 阅读 · 0 评论 -
检查用户是否在错误的目录中运行了CMake命令
但是有一些不熟悉CMake的依然会直接在当前目录配置,比如 CMake .那么我们如何在CMakeLists.txt 进行检测,避免这种行为呢?这样可以避免 生成的一些文件污染 代码目录。原创 2024-06-05 15:10:12 · 65 阅读 · 0 评论 -
VS2002 ~ VS2022平台工具集对应关系
MSC_VER。原创 2024-05-28 09:45:10 · 190 阅读 · 0 评论 -
Windows VS2022 C语言使用 sqlite3.dll 访问 SQLite数据库
下载 sqlite3.dll 库。这两个文件获取到了即可。原创 2024-05-25 17:56:35 · 266 阅读 · 0 评论 -
解决Windows终端PowerShell展示乱码的问题
标题:解决Windows终端PowerShell展示乱码的问题在使用Windows终端中的PowerShell时,有时会遇到乱码显示的问题,这可能会给用户带来困扰。这种问题通常与字符编码设置有关,因为不同的字符编码会导致终端无法正确显示特定语言或特殊字符。在本文中,我们将介绍如何解决Windows终端PowerShell中乱码显示的问题,并详细说明各种字符编码的数字表示,以及相关命令的用法。原创 2024-05-23 15:26:27 · 1835 阅读 · 0 评论 -
Qt5 创建带时间轴的 曲线(VS2019 + Qt 5)
最近,客户需要做一个 以时间为横轴,速度和位置(可以分开显示最好)为纵轴的图像曲线,电机只要运动就有图像,无需硬件对接 的Qt 图表,先上效果图!最后,大功告成,完工!原创 2024-05-20 20:48:52 · 137 阅读 · 0 评论 -
vcvarsall.bat 脚本究竟有什么用?
是一个脚本文件,用于设置 Visual Studio 编译器和工具的环境变量。这个脚本是 Visual Studio 安装的一部分,它允许开发者在命令行中使用 Visual Studio 的编译器和其他工具。下面我将详细介绍 的用途、工作原理以及如何使用它。 是一个批处理文件,它被设计用来初始化 Visual Studio 开发环境。当你在命令行中编译 C 或 C++ 程序时,你需要确保编译器和其他相关工具的路径被正确设置,这样编译器才能找到必要的库和头文件。 就是用来自动完成这个任务的。当你运行 ,它会原创 2024-05-20 20:47:55 · 215 阅读 · 0 评论 -
Windows平台下C++动态库的__declspec(dllexport)和__declspec(dllimport)的作用
和是Windows平台下用来导出和导入函数、变量和类的关键字。它们的正确使用可以确保动态链接库的正确运行,并且可以避免因为符号未导出或导入不正确而引起的链接错误。在编写动态链接库时,我们需要使用将需要导出的符号标记出来;在使用动态链接库的程序中,我们需要使用来声明从外部DLL文件中导入的符号。这样可以确保动态链接库的正确使用,提高代码的可移植性和可维护性。原创 2024-05-10 11:10:51 · 576 阅读 · 0 评论 -
C和C++头文件的作用、头文件编写规范、全局变量定义是否能定义在头文件中?
在C和C++编程中,头文件(Header files)是一种关键的概念。它们为了代码的可读性、可维护性以及可重用性起着至关重要的作用。在本文中,我们将深入探讨头文件的作用,讨论在头文件中能够编写的内容,以及讨论是否能在头文件中定义全局变量。头文件还可以用来定义宏和常量。这些宏和常量可以在整个程序中使用,提高了代码的可维护性和可读性。在C和C++中,可以在头文件中声明全局变量,但是并不推荐在头文件中定义全局变量。原创 2024-05-10 10:57:56 · 158 阅读 · 0 评论 -
探索STLport:C++标准模板库的开源实现
STLport是一个强大而灵活的C++标准模板库的实现,它为开发者提供了跨平台、高性能的STL解决方案。无论是在学术研究、商业应用还是个人项目中,STLport都是一个值得关注和探索的工具。如果您还没有尝试过STLport,不妨给它一个机会,您可能会被它的功能和性能所惊艳。原创 2024-05-08 23:01:20 · 197 阅读 · 0 评论 -
深入理解C和C++的预编译头文件
预编译头文件是一种优化机制,用于加速代码的编译过程。它的核心思想是将一些频繁引用且不经常修改的标准库头文件或自定义头文件预先编译成二进制形式,以便在后续编译过程中快速加载和重用这些信息,从而节省编译时间。预编译头文件通常会包含一系列标准库头文件和项目特定的头文件。标准库头文件通常是编译器自带的,例如stdio.hstdlib.h等,而项目特定头文件则是项目中的自定义头文件,可以包含各种声明和定义。在C和C++中,开发人员经常会包含大量的头文件,其中一些可能包含大量的代码,并且很少发生更改。原创 2024-05-07 10:21:34 · 114 阅读 · 0 评论 -
VS2022中测试C++20代码出错的解决办法
【代码】VS2022中测试C++20代码出错的解决办法。原创 2024-04-16 15:48:40 · 193 阅读 · 0 评论 -
VS2019 VS2022 LNK2019 无法解析的外部符号sprintf
它的作用是解决在使用新版本的 Visual Studio 编译旧版本的 C/C++ 代码时可能出现的一些兼容性问题。在早期版本的 Visual Studio 中,这些函数的实现方式可能与当前版本的 Visual Studio 有所不同,导致在链接时出现一些问题,比如链接错误或者运行时错误。就提供了一种兼容性解决方案,通过提供一组 legacy(遗留)的标准 I/O 函数定义,使得旧版本的代码能够在新版本的 Visual Studio 中正常编译和链接。主要解决的是与输入输出函数(如。原创 2024-04-11 19:54:29 · 373 阅读 · 0 评论 -
C++ 11 ~ C++21标准发展及其新特性概览
C++11是C++历史上最重要的更新之一,它引入了许多现代编程的特性,极大地改善了语言的表现力和性能。原创 2024-04-10 20:47:43 · 245 阅读 · 0 评论 -
GNU Autotools 套件详解
aclocal` 是一个用于生成 `aclocal.m4` 文件的工具,这个文件包含了一系列的宏定义,这些宏用于在 `configure.ac` 或 `configure.in` 文件中调用。GNU Autotools 是一套用于构建和安装软件的工具,它包括了一系列的工具,如 `autoscan`, `aclocal`, `autoconf`, `autoheader`, `automake` 等。5. **生成 `config.h.in`**:运行 `autoheader` 来生成配置头文件模板。原创 2024-04-10 20:20:38 · 237 阅读 · 0 评论