电脑壁纸分享【二次元人物篇】
关于vtkSmartPointer和vtkNew
vtkPolyData序列化
C++优化程序的Tips

[gallery size="medium" ids="1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059"]
闲来无事,总结一下这四种QJson类型,包括QJsonObject、QJsonArray、QJsonValue、QJsonDocument,重点是记录一下这四种类型之间及与QString的相互转换,免得每次用到都要再搜一遍。 1. QJson类型介绍 Qt 提供了用于处理 JSON 数据的四种主要类型: QJsonObject:表示一个 JSON …
信号与槽是我个人认为QT中最牛的机制之一,最近没有其他的内容可写,今天就来细细总结一下这个信号与槽机制。 1. 信号与槽机制概述 信号与槽机制可以理解为QT中的一种通信手段,在运行相关代码前,分别声明信号和槽,再利用connect()方法将信号和对应的槽连接起来,之后再需要的地方使用emit触发信号,那么就可以让槽响应。 其中,槽可以是特定的槽函数…
1.前言 这两者的区别大家应该都知道,至于为什么我想写这一篇小记,主要是以前几乎不用vtkNew,最近想用一用,然后在不经意间出现了如下报错: error: C2280: “vtkNew<vtkImageData>::vtkNew(const vtkNew<vtkImageData> &)”: 尝试引用已删除的函数 …
1. 使用vtk提供的格式转换方法 以XML格式为例: vtk库中支持多种格式的读写转换,比如利用XML格式,可以将vtkPolyData格式序列化为string类型,直接使用vtk库中的 vtkXMLPolyDataWriter 方法进行序列化 ,以及 vtkXMLPolyDataReader 方法解序列化。 示例: // 读vtkPolyDat…
1. 避免创建过多中间变量 过多的中间变量不利于代码的可读性,还会增加内存的使用,而且可能导致额外的计算开销。 将用于同一种情况的变量统一管理,可以使用一种通用的变量来代替多个变量。 2. 函数中习惯使用引用传参而不是返回值赋值 常有的一种情况是,需要使用函数进行计算或处理数据,并通过其返回值获得结果。 对于简单的计算或处理,直接使用返回值返回结果…
小记南昌、景德镇之行

[gallery size="large" ids="1002,1000,999,998,997,996,994,1005,1006,983,995,991,993,992,989,988,984,985,986,987,990"]
正则表达式与C++

1. 概述 1.1 正则表达式概述 正则表达式(Regular Expressions,简称 regex)是用于匹配文本模式的一种特殊字符序列,其可以用一系列字符来表示出不同文本的对应模式。正则表达式的应用范围十分广泛,包括验证文本格式、判断字符种类、解析文本信息、转换目标文本、遍历搜索文本、符号化文本等。 一般在文件搜索、浏览器搜索时都可以使用正…
电脑壁纸分享【二次元非人物篇】

[gallery size="full" ids="964,963,962,961,960,959,958,957,956,955,954,953,952,951,950"]
C++ Lambda表达式
1. Lambda表达式的简述 Lambda表达式是C++11引入的一种函数对象,其使用更为简洁,能更方便的嵌入需要函数的地方。 Lambda表达式也被称为匿名函数,其不需要特定的函数名称,甚至不用指定参数和返回类型。 合理使用Lambda表达式能有效提高代码的可读性,减少代码的冗余量,使代码更为简洁、高效、安全。 2. Lambda表达式的语法格…