摘要:自己去官网下载预编译好的包解压后在这里添加路径
阅读全文
摘要:TCP 服务端创建TCP连接,其作用是监听并接受来自其他IP的连接请求 1. 创建套接字 socket(); 参数:1. 协议族,即IPV4还是IPV6;2. 套接字类型,有着比较更复杂的选择,但是一般就是根据选择TCP或UDP进行确定;3. 协议,可以选择TCP或UDP,一般使用0,其会通过前两个
阅读全文
摘要:选择.qrc文件所在文件夹,file name则是qrc文件名,然后一直下一步就可以了
阅读全文
摘要:命名空间是为了防止类名、函数名重复等造成的错误。 Qt有以下的写法 QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACE 在开始和结束关键字中间进行命名空间的创建及其内部类的声明 而C++则是直接进行创建 namespa
阅读全文
摘要:public: 内部和外部对象都可以调用 protect: 内部和继承的子类内部可调用 private: 仅内部可用
阅读全文
摘要:给一个例子 class SerialReaderThread : public QThread { Q_OBJECT public: explicit SerialReaderThread(QSerialPort* serialPort, QObject* parent = nullptr) : Q
阅读全文
摘要:只有一个参数的构造函数前面加上explicit,这样一来在创建对象时不会被转换类型,因调用构造函数时有explicit限制,如 class MyClass { public: explicit MyClass(int value) : data(value) { } int getData() co
阅读全文
摘要:来自CHATGPT的回答 static_cast<float>(value) 和 (float)value 实际上是完成相同的类型转换,即将 value 的类型转换为 float 类型。两者的区别在于语法和一些特定的使用情境。 语法:static_cast<float>(value) 是使用 C++
阅读全文
摘要:封装: 通俗来说就是类(class),将数据变量和函数方法封装到一起成为类,实其可以被创建对象 继承: 子类可以继承父类的变量和方法并以此基础进行拓展 多态: 通过虚函数、基类指针或引用调用适当的子类的函数版本,实现统一函数名多个功能
阅读全文
摘要:先解释虚函数,对于基类,子类继承基类后可能会调用其某个函数FA,而不同的子类继承了同一个基类后需要基类内某个同样的函数FA但又不是同个作用,此时则会在对应的子类内对应重载派生出FA_B函数和FA_C函数,而这时要求FA为虚函数(virtual) 那为什么不各自写成一个函数B和C呢?这就是多态的意义
阅读全文