知识点杂记

    科技2022-09-03  108


    传送门👇

    一、关于QT二、变量类型1、字符串相关 三、C++相关


    一、关于QT

    Q_OBJECT宏 : 加入了Q_OBJECT,才能使用QT中的signal和slot机制。信号与槽:Qt对象之间通信的接口子类头文件放到父类头文件里,a.exec():结尾处,等待时间发生(用户操作)connect中,不一定有信号,但有信号要处理QWidget 控件 → 自定义类名很重要 ,创建后在myWidget.h 里, 自动生成派生类 class myWidget : public: QWidgetQdialog: 对话框,无伸缩

    二、变量类型

    1、字符串相关

    1.QString与QChar类

    关于Qchar类详细的文章 https://blog.csdn.net/lmhuanying1012/article/details/78181136

        1)Qchar转char类型

    char A; QChar Qch; A = QCH.toLatin1(); //Qchar ---> char //还有 toutf8

        2)QString转Qchar类型

    QString str = "ABCDE"; QChar *b = new QChar[5]; b = str.data(); // b[0]~b[6]就能读取相对应的字符 //str.data() 类型是char *

    str.toUtf8() -----> 字节数组QbyteArray -----str.toUtf8().data()—> char*

    Latin1是一种编码集
        Latin1是ISO-8859-1的别名,有些环境下写作Latin-1。ISO-8859-1编码是单字节编码, 向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。      因为ISO-8859-1编码范围使用了单字节内的所有空间,在支持ISO-8859-1的系统中传输和存储其他任何编码的字节流都不会被抛弃。换言之,把其他任何编码的字节流当作ISO-8859-1编码看待都没有问题。这是个很重要的特性,MySQL数据库默认编码是Latin1就是利用了这个特性。ASCII编码是一个7位的容器,ISO-8859-1编码是一个8位的容器。

    三、C++相关

    1、函数指针

    void fun(类型) { //某个函数 } void (*p)(类型) = fun; //定义一个指针指向上面的函数
    Processed: 0.009, SQL: 9