自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (2)
  • 收藏
  • 关注

原创 在C++11及后续标准中,auto和decltype是用于类型推导的关键特性,它们的作用和用法。

在C++11及后续标准中,`auto`和`decltype`是用于类型推导的关键特性,它们的作用和用法有所不同。以下是详细说明:

2025-04-08 18:45:41 682

原创 C++中为什么要使用nullptr而不是null

nullptr是 C++11 引入的一个更现代化、更安全的空指针表示方式,能够显著提高代码的可读性和安全性。相比之下,NULL或0的使用容易导致类型混淆和平台依赖问题。因此,在现代 C++ 编程中,推荐优先使用nullptr。最终结论:使用nullptr是因为其提供了更强的类型安全性、更明确的语义以及更好的跨平台兼容性。

2025-04-06 10:04:38 225

原创 C++11:应用constexpr和编译时计算优化代码性能.

通过使用constexpr,我们可以将一些计算任务转移到编译阶段完成,从而提高程序的执行效率。这在处理静态数据结构、模板元编程以及需要频繁访问的数据时特别有用。不过需要注意的是,过度使用constexpr可能会增加编译时间,因此在实际开发中应权衡利弊。

2025-03-02 18:57:14 183

原创 正则表达式用法及其示例:匹配、查找、替换文本中的模式,及QT下如何使用正则表达式。

当然!正则表达式是一种强大的工具,用于匹配、查找、替换文本中的模式。下面是一些常见的正则表达式用法及其示例。在 Qt 中使用正则表达式主要依赖于 `QRegExp` 和 `QRegularExpression` 类。这两个类都提供了强大的正则表达式匹配功能。下面是关于如何使用它们的一些基本示例。

2025-02-23 19:31:39 1184

原创 QString是 Qt 框架中的一个核心类,基本用法使用:创建、字符串拼接、截取、查找、替换、分割、大小写转换、比较。

QString是 Qt 框架中的一个核心类,用于处理字符串数据。它提供了许多功能来处理文本操作,包括但不限于字符串拼接、分割、大小写转换等。下面是一些QString。

2025-02-23 19:25:45 368

原创 C++11引入的一个重要特性:移动语义,提高程序性能和资源管理效率。

移动语义通过右值引用(&&)实现。右值引用是一种特殊的引用类型,它可以绑定到临时对象(也称为右值)。通过移动语义,我们可以将资源从一个对象转移到另一个对象,而不是进行复制。这样,源对象的状态会被设置为未定义状态(通常是默认构造的状态),而目标对象则拥有原本资源的所有权。移动语义是现代C++中的一个重要特性,它显著提高了程序的性能,特别是在处理大型数据结构时。通过合理地使用移动语义,我们可以避免不必要的资源拷贝,从而提高程序的效率和响应速度。

2025-01-19 13:35:54 166

原创 C++内联函数inline的使用:C++优化减少函数调用的开销。

内联函数(Inline Function)是一种在C++中使用的优化技术,用于减少函数调用的开销。通常情况下,编译器会在调用函数时生成相应的函数调用指令,这会增加额外的执行时间。而内联函数通过将函数体直接插入到调用该函数的地方,从而避免了函数调用的开销。

2025-01-12 18:41:03 356

原创 c++为什么需要虚析构函数?

将析构函数声明为虚函数是处理继承层次结构时的一个重要实践。它确保了即使通过基类指针删除派生类对象,也能正确地调用派生类的析构函数,从而避免资源泄漏和其他潜在问题。

2025-01-01 09:27:03 383

原创 c++字节对齐

字节对齐是一种重要的技术,用于确保数据在内存中的高效访问。通过理解对齐规则,并适当使用编译器提供的工具,可以更好地控制结构体的布局,从而优化程序的性能。

2025-01-01 09:04:26 353

原创 Qt 框架中的一个容器小部件QStackedWidget的基本使用

QStackedWidget 是 Qt 框架中的一个容器小部件,它允许你将多个子小部件(通常是 QWidget 对象)堆叠起来,但是每次只能显示其中一个。它类似于一个标签页式的界面,用户可以通过点击不同的标签来切换显示不同的内容。

2024-09-08 21:27:38 553

原创 在网线连接的情况下,获取对方的IP地址通常需要依赖于网络通信协议

在网线连接的情况下,获取对方的IP地址通常需要依赖于网络通信协议。在TCP/IP协议中,当两台设备通过网线连接并进行通信时,它们的IP地址通常在TCP三次握手过程中被确定。然而,直接从网络中获取对方的IP地址并不简单,因为这涉及到网络编程知识和可能的网络协议栈的深入理解。

2024-08-28 15:56:15 819

原创 LINUX下C语言读取网卡IP

是您想要获取IP地址的网卡名称。在不同的Linux系统中,网卡的名称可能不同(例如,可能是。这个程序首先创建了一个UDP套接字,并绑定到任何可用的IP地址和端口上。函数获取套接字的本地地址,这个地址就是当前使用的IP地址。此外,某些系统可能需要root权限来执行此操作。函数将IP地址从二进制格式转换为可读的字符串格式。请注意,这个程序假设。

2024-08-17 18:34:45 585

原创 C++适配windows和linux下网络编程TCP简单案例

TCP/IP(Transmission Control Protocol/Internet Protocol)协议是互联网的基础协议,包括了TCP(传输控制协议)和IP(互联网协议)等。TCP/IP协议族定义了网络中数据传输的规则,包括了数据包的封装、路由选择、数据传输、错误检测和校正等。

2024-08-17 18:20:45 806

原创 64位和32位对C++ 对long类型的使用造成程序崩溃、内存泄漏问题。

64位和32位对C++ 对long类型的使用造成程序崩溃、内存泄漏问题。

2024-05-31 21:41:54 448

原创 qt进阶2:windows下可执行程序崩溃生成dmp,定位崩溃问题。

qt编译的可执行程序在windows下崩溃可生成dmp文件,用于调试定位崩溃原因。

2024-04-11 21:33:25 912

原创 qt调试日志文件生成

qt有固定的调试日志接口,可以通过终端去打印,但是仅适用在本地去调试,例如想长期放到测试台去检测, 可以采用生成日志文件的方式去监测.关键字:日志文件。

2024-04-08 22:17:09 623

原创 C++封装、继承(单继承)、多态详细分析。

多态性特征是 C++中最为重要的一个特征,熟练使用多态是学好 C++的关键,而理解多态的实现机制及实现过程则是熟练使用多态的关键。文章在分析多态性基本属性的基础上,结合具体程序实例重点分析了动态多态的实现机制,并结合虚函数和编原理分析了动态多态的实现过程。关键词:C++;多态性;虚函数多态性作为面向对象程序设计语言的 3 大要素之一,因其灵活性、伸缩性和复杂性而难以掌握。

2023-12-09 11:27:34 195

原创 C++11 新特性:智能指针的使用:shared_ptr、weak_ptr、unique_ptr的使用,使用案例说明。

C/C++ 为了实现对内存的细粒度的操作,没有设计垃圾收集器。因此,使用 C/C++ 编写项目时,开发人员需要格外注意内存的申请和释放。本文介绍了shared_ptr和weak_ptr源码,分析了它们对内存泄漏的检测方式,并指出它们所存在的不足。希望读者可以通过改进指针算法或 share_ptr 来规避内存泄漏,尽量不要写出连检测算法也无法处理的代码结构。提示:以下是本篇文章正文内容,下面案例可供参考weak_ptr是一种用于解决shared_ptr相互引用时产生死锁问题的智能指针。

2023-11-10 20:24:54 536

原创 回调函数的使用:案例一:c语言简单信号与槽机制。

了解回调函数的基本概念,函数指针的使用、简单信号与槽的实现机制;回调函数和普通函数的区别;函数指针的使用信号与槽的机制。

2023-07-26 16:54:45 604 1

原创 Linux下使用C语言实现进程间的通讯-消息队列

参考网上资源:https://www.bookstack.cn/read/linuxapi/docs-msgsnd-msgrcv.md该类型需要自己在编程时定义,用于存储消息的内容。下面给出一个范例,注意,里面的名称随意。消息类型必须要有,且不为0long mtype;//消息类型 char mtext [ 1 ];//数组大小编程时自己指定 };用于linux下进程间的通讯;了解在linux下使用命令创建、查看、删除消息队列,并修改其属性;使用c代码实现消息队列的创建等。

2023-07-06 22:37:56 777

原创 c语言全局变量(extern)和静态全局变量(static)的使用、拓展作用域(全局、局部等)

c、c++基本知识点:作用域、全局变量(extern)、局部变量等

2023-06-12 20:19:27 14592

原创 C++11多线程:windows临界区和Linux互斥锁、递归锁的区别与使用。

多线程windows临界区和Linux互斥锁提示:以下是本篇文章正文内容,下面案例可供参考(1)了解windows临界区;(2)了解linux递归锁和互斥锁;(3)了解基本函数的使用。

2023-05-14 20:22:13 1176

原创 C++11多线程:std::thread创建线程和std::async创建异步任务的区别,std::async创建异步任务后没有被推迟执行。

(1) thread创建新的线程;(2) async创建新的异步任务;有没有创建新线程立即执行还是延迟(没创建新线程)执行(3)std::thread和std::async的区别;(1)std::async的强制创建异步任务()与std::thread创建线程相似,容易系统崩溃。(2)std::async不带参数的创建异步任务,不会造成系统崩溃。

2023-05-06 20:40:40 1646

原创 C++11多线程:原子操作std::automic-用于多个线程之间共享的变量。

原子操作std::automic的基本概念和用法。了解std::automic的基本概念和使用;了解与互斥量的区别;什么是原子操作?

2023-04-12 21:31:27 4809

原创 C++11多线程:std::shared_future:也是个类模板,get()函数复制数据

std::shared_future:也是个类模板,get()函数复制数据了解std::shared_future的用法。持续更新中…

2023-04-06 21:53:00 525

原创 C++11多线程:std::future的其他成员函数:wait_for(等待一定的时间)。

std::future的其他成员函数:std::future的用法:参考连接(1)get()函数转移数据;(2)wait_for(等待一定的时间)。持续更新中。了解wait_for(等待一定的时间)的使用;持续更新中…

2023-04-05 20:26:56 4344

原创 C++11多线程:std::packaged_task基本使用-打包任务,包装任务;std::promise的类模板使用。

语言:c++11(1)std:packaged_task:通过std::packaged_task 来把各种可调用对象包装起来,方便将来作为线程入口函数来调用。;(2)std::promise:我们能够在某个线程中给它赋值,然后我们可以在其他线程中,把这个取值出来用。(3)代码案例。std::packaged_task:打包任务,把任务包装起来。(1)是个类模板,它的模板参数是 各种可调用对象;通过std::packaged_task 来把各种可调用对象包装起来,方便将来作为。

2023-03-26 10:40:42 1943

原创 C++11多线程:如何启动一个“异步任务”,并介绍std::async、std::future函数使用。

语言:C++11;介绍(1)什么是多线程异步任务?(2)介绍std::async、std::future函数使用;(3)编写完整的代码案例并附截图。std::async、std::future创建后台并返回值(1)了解多线程异步任务;(2)了解线程同步和线程异步的区别;(3)如何创建一个“异步任务”?(4)C++11 中std::async、std::future函数使用,以及get()函数的使用。持续更新中…

2023-03-21 20:03:17 1254

原创 C++11多线程:condition_variable、wait()、notify_one()、notify_all()的使用。

C++11多线程,wait()和notify()的使用。c++11多线程之condition_variable、wait()、notify_one()、notify_all()的使用。(1)了解wait()的使用(对锁 的影响),以及第二参数有无的区别;(2)condition_variable、wait()、notify_one()或notify_all()如何配合工作。(3)理解如何处理线程之间的交互联系?

2023-03-11 18:24:16 4106

原创 C++11多线程:单例设计模式共享数据问题分析、解决(c++11)设计多线程。

单例设计模式共享数据问题分析、解决(c++11)设计多线程,本文简单介绍什么是设计模式-单例模式,并采用c++11的语言方式,创建了单例类,采用多线程的方式对问题进行分析和解决。

2023-03-05 18:44:36 850

原创 qt-c++进阶1-window、linux下获取本机所有网卡ip信息、根据网卡名获取ip地址。

总结c++获取本机网卡信息的方法第一章:适用于windows操作系统、linux操作系统用解析获取本机IPV4地址;用解析获取所有网关信息(IP地址(IPV4和IPV6)子网掩码广播地址持续更新中…这里只是以qt-c++总结出获取网卡信息的方法,后续会总结出c、c++获取网卡ip信息的多种方法,持续更新中…

2023-02-27 21:16:00 2730 1

原创 windows下qt设置网卡ip信息+简单案列(图形化界面设置网卡IP)。

方法1:QProcess修改网卡ip信息;方法2:system修改ip信息;后续持续更新…

2023-02-12 08:00:58 1958

原创 windows和linux(centos、Ubuntu)下设置时区的方法、不同格式u盘在不同时区对文件修改时间的影响、时区时间查看

本章主要内容:1.windows和linux下如何设置时区;2.linux下几种修改时区的方法;3.etc/localtime与etc/timetone的区别;54不同格式u盘在不同时区对文件修改时间的影响;持续更新中…

2023-02-07 08:54:56 2919 2

原创 ps修改照片像素(大小)、分辨率。

ps修改招聘像素(大小)、分辨率

2023-01-28 17:55:10 349

原创 qt跨平台的编程注意事项1-linux下qt编译出现undefined reference to错误

1 linux下qt编译出现undefined reference to错误**1.1 前提条件:**1. 在一个test1.cpp里面调用test2.cpp里面的一个实现函数;2. 这个函数是`extern` 声明的;3. 已经在test1.cpp加入test2.h头文件,并且F2能进入到此函数> test2.cpp、test2.h,不是一个class类,只是单纯的一个声明定义函数,一个实现函数。**1.2 bug:**windows下能够编译通过linux下编译出现undefine

2023-01-28 17:49:11 1732

原创 linux下修改网卡信息(网卡名、IP、子网掩码、网关)

linux下修改网卡信息(网卡ip、网关、子网掩码、网卡名)这里编译生成的可执行文件需要以root权限运行才能去修改网卡信息。

2023-01-28 17:40:49 2493

原创 qt知识点总结1-QString和char * 的相互转换

(1)QString转换为char *(2)char *转换为QString。

2023-01-28 17:36:09 441

原创 C/C++知识点:静态数据初始化、动态内存数据初始化、new和delete的正确使用、mement初始化数组和结构体-静态内存数据。

C++知识点:静态数据初始化:基本变量、数组、字符串数组、类数组等动态内存数据初始化、new和delete的正确使用、mement初始化数组和结构体-静态内存数据。

2023-01-28 17:32:12 1038

原创 windows下qt使用第三方库(静态链接库lib)、静态库和动态库区别、动态库的使用。

windows下qt使用第三方库(静态链接库lib)。为了能够使测试更准确,首先自己用qt创建了一个已经封装好的lib库。然后让另一个项目去链接这个lib静态库,并且去调用里面的方法。把第三方lib库、头文件,放到指定的路径中(我这里是全部放到了untitle项目的include目录下),要保证untitled项目能够找到lib库和头文件。

2022-12-28 20:09:51 10861 1

原创 C、C++读取数据文件DAT(二进制文件)

通过网上大佬的笔记总结本篇文章,并编译运行,后续会总结出多种读取二进制文件。(1)头文件(2)FILEFILE 是 头文件中的一个结构体,它专门用来保存文件信息。(3)fopen// filename -- 为文件名(包括文件路径). // mode -- 为打开方式,它们都是字符串。// 返回值 -- fopen() 会获取文件信息,包括文件名、文件状态、当前读写位置等,并将这些信息保存到一个 FILE 类型的结构体变量中,然后将该变量的地址返回。;

2022-12-21 11:14:51 25495

sqlite3.exe压缩包

用于解决svn中 clean up不成功,删除.svn目录下表数据用。

2022-12-02

javaweb文件上传和下载需要导入的包

javaweb文件上传和下载需要导入的包

2022-04-19

eclipse-java-2020-09-R-win32-x86_64.zip

java编译器与jdk

2021-02-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除