09 2020 档案
摘要:既然是网络传输,涉及几个系统之间的交互,那么首先要考虑的是如何准确的定位到网络上的一台或几台主机,再者如何进行可靠高效的数据传输。这里就要使用到TCP/IP协议。9 1.简介 1.1 TCP/IP协议组 TCP/IP协议(传输控制协议)由网络层的IP协议和传输层的TCP协议组成。 IP层负责网络主机
阅读全文
摘要:在某个大佬编程的代码中看到Q_NULLPTR,查文档查不到它的用处,终于在外国论坛看到讲解,我觉得最合适的解释如下: 简单的说,编译器支持C++11,会变为nullptr,不支持变为NULL。所以直接用nullptr就好了。
阅读全文
摘要:工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。本文从一个具体的例子逐步深入分析,来体会三种工厂模式的应用场景和利弊。 1. 简单工厂模式 该模式对对象创建
阅读全文
摘要:Qt 中的智能指针 上一篇博客中介绍了 C++11 标准中的提供的智能指针。在 Qt 中也提供了类似的替代功能,并且比 C++11 标准中提供的功能还要强大,所以如果我们使用 Qt 作为基础库,那么就没有必要使用C++11 的智能指针。 Qt 的智能指针包括: QSharedPointer QSco
阅读全文
摘要:函数模板( Function templates) 模板(Templates)使得我们可以生成通用的函数,这些函数能够接受任意数据类型的参数,可返回任意类型的值,而不需要对所有可能的数据类型进行函数重载。这在一定程度上实现了宏(macro)的作用。它们的原型定义可以是下面两种中的任何一个: temp
阅读全文
摘要:1、旧(Qt文档内说明不推荐使用) qsrand(QTime::currentTime().msec()); // 随机数初始化 qrand()%10; 2、新 // 使用方法例子 #include<QRandomGenerator> qint16 rand= QRandomGenerator::g
阅读全文
摘要:类型名称 注释 备注 qint8 signed char 有符号8位数据类型 qint16 signed short 有符号16位数据类型 qint32 signed int 有符号32位数据类型 qint64 long long int 或(__int64) 有符号64位数据类型 qintptr
阅读全文
摘要:C++11中的Lambda表达式用于定义并创建匿名的函数对象,以简化编程工作。首先看一下Lambda表达式的基本构成: [函数对象参数](操作符重载函数参数)mutable或exception ->返回值{函数体} ① 函数对象参数; [],标识一个Lambda的开始,这部分必须存在,不能省略。函数
阅读全文
摘要:// 创建两个部件 QSpinBox *spinBox = new QSpinBox(&window); QSlider *slider = new QSlider(Qt::Horizontal, &window); spinBox->setRange(0, 130); slider->setRan
阅读全文