1.Qt容器:QList
2.C++ & QT ---05(内存、编译编译指针、源码源码引用、内存函数高级)
Qt容器:QList
QList是多大多久Qt中一个通用容器类,用于存储相邻内存位置的编译编译项目,并提供基于索引的源码源码强力买卖指标公式源码快速访问。在Qt6中,内存QVector类被QList的多大多久别名所取代。QList的编译编译值类型必须是可赋值的数据类型,但不支持将QWidget存储为值类型。源码源码QList的内存最大存储大小取决于体系结构,通常为2GB减去内存开销。多大多久央视网源码当内存分配失败时,编译编译QList会抛出std::bad_alloc异常或产生未定义行为,源码源码具体取决于编译时是内存否启用了异常支持。
QList提供了多种成员函数,例如replace函数用于替换列表中指定索引位置的项目,插入数据函数用于在指定索引位置插入值,插入多个副本,以及在迭代器之前插入值等。emplaceBack函数用于在列表末尾添加新元素,并返回新元素的引用。prepend函数用于在列表开头插入值。紫色贷款借贷源码QList还提供构造函数,用于创建初始大小的列表,并具有线性时间复杂度。capacity函数返回列表可以存储的最大项目数,clear函数用于删除列表中的所有元素。constData函数返回指向列表数据的常量指针,first和last函数返回列表的首项和末项引用。
QList包含多种用于元素操作的函数,如at函数用于获取指定索引位置的值,begin和end函数提供迭代器访问列表元素,数据函数用于获取列表数据指针。va虚拟平台源码erase函数用于从列表中移除指定位置的项目,fill函数用于为所有项目赋值,first和front函数返回首项,last和back函数返回末项。indexOf和lastIndexOf函数分别用于查找第一次和最后一次出现的值的索引位置,mid函数返回指定位置之后的子列表,move函数用于交换指定位置的元素,pop_back和pop_front函数分别用于删除末项和首项,remove函数用于移除指定位置的n个元素。
QList还支持谓词函数,如removeAll,昊宇云源码removeIf,removeOne,以及用于删除所有与特定元素相等的元素的函数。reserve函数用于预留内存,resize函数用于调整列表大小,shrink_to_fit和squeeze函数释放多余内存。sliced函数返回指定位置和数量的子列表,swapItemsAt函数交换两个元素的位置,takeAt函数用于移除指定位置的元素并返回它,takeFirst和takeLast函数分别用于移除首项和末项并返回它们。QList还提供了多个非成员函数,用于执行类似操作。
C++ & QT ---(内存、指针、引用、函数高级)
C++核心编程主要探讨面向对象编程技术,它涵盖了C++语言的核心和精髓。内存分区模型是C++程序执行时内存管理的重要方面,通常分为四个区域:代码区、全局区、栈区和堆区。代码区存放了函数体的二进制代码,由操作系统管理,特点是共享和只读。全局区用于存放全局变量、静态变量和常量。栈区由编译器自动分配和释放,用于存储函数参数值、局部变量等,确保这些数据在函数结束时自动释放。堆区则是由程序员手动分配和释放的空间,用于动态内存管理,主要通过new和delete操作符使用。
新操作符(new)用于在堆区开辟数据,所创建的数据会返回指向该数据的指针。引用是C++中提供的一种便捷的方式来给变量起别名,使用时需要遵循一定的规则,例如必须初始化,并且一旦初始化后,引用的值不能改变。引用可以作为函数参数和返回值,提供更简洁的指针操作方式,并且在引用时可以作为常量使用,以防止意外修改实参。常量引用主要用于避免在函数调用时误操作形参。
C++中还支持函数的默认参数,允许在函数声明时指定默认值,以简化调用函数的过程。函数占位参数则是用于函数调用时确保所有必要参数都被提供,即使有些参数有默认值。函数重载允许使用相同的函数名实现不同功能,以提高代码的复用性,关键在于满足一定的条件,例如在同一作用域下、函数名称相同、参数类型、个数或顺序不同。
至此,C++核心编程的内存、指针、引用和函数高级概念得到了全面的介绍,这些基础原理是深入理解C++语言和编写高效、可维护的代码的关键。