- 博客(5)
- 收藏
- 关注
原创 C++中关于函数的返回一个容器时的各种返回值类型和性能
针对于函数返回一个容器时值返回智能指针返回指针返回对于没有多路径返回,且不存在复杂控制流的函数来说会发生编译器优化,建议直接使用值返回这种方式。因为这种方式代码简单,同时高效,没有内存泄露。当然为了保证会存在编译器优化(NROV、ROV)可以自己对函数进行测试。对于如果不会发生编译器优化的情况下,建议使用智能指针返回,因为这种方式高效,同时不存在内存泄露风险。这种情况虽然是高效的,但不推荐因为存在内存泄露的问题。
2025-05-07 09:57:36
913
原创 QT自定义代理且实现ComboxBox图标加载(个人理解)
官方概念:指通过继承或类来创建自定义的项渲染和编辑方式。个人理解就是:步骤2:将tableView的item设置为自定义组件,代码一般是:这里的genderDelegate是自定义类的对象,这个类里面会创建一个QComboBox组件的指针。这句代码也很容易理解就是给下标1的列(性别)设置一个代理,代理对象就是我们自定义类创建的一个实例。步骤1:就是从Model中获取数据,然后用这数据设置自己的代理对象。这个通常改写父类的方法实现。
2025-05-01 17:12:57
1012
原创 Qt保存QStandardItemModel的数据遇到的坑(中文乱码详细解释)
本文基于:Qt Creator 4.11.1 Based on Qt 5.14.1 (MSVC 2017, 32 bit)
2025-04-26 17:36:50
773
原创 string、const char *、char *的区别和应用
这里显示实参和形参不兼容,这是因为形参是char *值可以进行更改,但是实参是 const char *值不可更改,将它传给char *类型存在修改值的风险,因此发生错误。解决方法要么将常字符串(const char*)转化为char *,要么将形参char *改为const char *。const char*封锁的是指针指示的内容,这个对应这常字符串。封锁的是指针所指的值,也就是说*p不可更改,但p可以更改。封锁的是指针自己,也就是p不能更改,但*p可以更改。print((char*)"输入字符");
2025-04-23 21:51:44
490
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人