自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Live555 源代码的详细说明

Live555是一组用于实现多媒体流应用的C++库。它包含多个子库,每个子库提供特定的功能。这些子库包括UsageEnvironment、groupsock、liveMedia和BasicUsageEnvironment。

2024-06-05 08:52:48 1505

原创 C++异常处理

C++ 中的异常处理是用于处理运行时错误的一种机制,使得程序能够优雅地处理异常情况,而不会简单地崩溃。异常处理主要包括三个关键字:、 和 。try: throw: 可以是任何类型的对象,通常是标准库中的异常类或自定义的异常类。 catch: 指定要捕获的异常类型, 是异常对象的变量。 示例代码以下是一个简单的异常处理示例:异常处理的细节和注意事项 异常对象:捕获异常的顺序:重新抛出异常: 自定义异常类:

2024-05-30 07:49:58 256

原创 gdb, 如何启用调试窗口

启用 TUI 模式后,您将在 GDB 中看到一个分割窗口,其中一个窗口用于显示源代码,另一个窗口用于显示调试信息,如堆栈跟踪和寄存器值。这使得在调试过程中更加方便,并且可以更容易地跟踪程序的执行路径。在 GDB 中,你可以通过设置 TUI(Text User Interface)模式来启用调试窗口,以便更方便地查看代码和调试信息。这将在启动 GDB 时自动启用 TUI 模式,并将指定的可执行文件加载到调试器中。: 要在 GDB 中关闭 TUI 模式,可以按下。

2024-05-28 13:44:01 283

原创 GDB常用命令

GDB 是一个功能强大的调试工具,提供了许多命令来帮助您调试程序。这只是 GDB 中的一小部分常用命令。您可以在 GDB 提示符下输入。来获取更多关于特定命令的信息。

2024-05-28 13:38:11 145

原创 使用 valgrind 的 Massif 工具监控线程的内存使用情况

通过 Massif 工具,能够详细地分析程序的内存使用情况。确保正确生成和查看 Massif 输出文件,可以帮助你深入了解程序的内存分配和使用模式。如果有任何问题,可以通过上述步骤进行排查。

2024-05-28 09:25:11 483

原创 C++ 各种容器的详细说明 (td::vector、std::list、std::deque、std::set、std::map 和 std::unordered_map)

是一个动态数组,能够自动调整大小。它在内存中连续存储元素,支持快速随机访问。std::list是一个双向链表,元素在内存中不连续存储。它支持高效的插入和删除操作。std::deque是一个双端队列,支持在两端高效地插入和删除元素。与不同,std::deque在内存中不连续存储元素。std::set是一个有序集合,存储唯一的元素,并自动对其进行排序。std::set通常使用红黑树实现。std::map是一个关联容器,存储键值对,并按键自动排序。std::map通常使用红黑树实现。

2024-05-27 13:28:43 282

原创 C++ 智能指针详细使用指南 (std::unique_ptr、std::shared_ptr 和 std::weak_ptr)

是一种独占所有权的智能指针,即一个对象只能独自拥有某块内存。当超出其作用域时,它会自动销毁所管理的对象,并释放相应的内存。可以为delete p;});是一种共享所有权的智能指针,可以有多个实例共享同一块内存。当最后一个实例销毁时,所管理的内存才会被释放。与类似,delete p;});是一种不拥有对象所有权的智能指针,用于解决循环引用的问题。可以观察但不能直接访问所管理的对象,必须通过获取对象的访问权。智能指针是 C++ 标准库中非常重要的工具,用于自动管理动态分配的内存,减少手动内存管理的错误。

2024-05-27 10:16:46 856

原创 Valgrind 使用手册:检测和调试内存错误的利器

这篇文章介绍了 Valgrind 工具集的基本使用方法,包括安装、配置和运行 Valgrind,并演示了如何利用 Valgrind 来检测和调试内存错误。通过使用 Valgrind,你可以更轻松地发现和解决程序中的内存问题,提高程序的质量和可靠性。通过仔细阅读 Valgrind 生成的报告,并根据报告中的提示修复问题,你可以提高程序的质量和稳定性,减少错误和漏洞的出现。它会检查程序的内存使用情况,包括访问未分配的内存、释放未分配的内存、使用已释放的内存等。命令,后跟你要运行的可执行文件的路径。

2024-05-24 11:21:05 635

转载 C++类中this指针的理解

先要理解class的意思。class应该理解为一种类型,象int,char一样,是用户自定义的类型。用这个类型可以来声明一个变量,比如int x, myclass my等等。这样就像变量x具有int类型一样,变量my具有myclass类型。理解了这个,就好解释this了,my里的this 就是指向my的指针。如果还有一个变量myclass mz,mz的this就是指向mz的指针。 这样就很容易理解...

2018-06-05 17:07:50 182

空空如也

空空如也

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

TA关注的人

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