- 博客(33)
- 资源 (8)
- 收藏
- 关注
原创 STLport5.2.1编译
本机是win10系统,VS2019,按照步骤尝试编译一下,发现没法正常编译,可能STLport5.2.1是比较古老的版本,有些头文件已经发生了变化。然后用XP虚拟机,使用VS2005进行编译。这里使用的VS2005,所以执行命令使用。编译完成后在这里面可以看到静态和动态库文件。执行 configure.bat。,如果是VS2008,则执行命令。设置STLport头文件目录。设置STLport库文件目录。开始编译STLport源码。打开VS2005命令行。
2025-02-05 10:12:37
192
原创 C++构造函数变量初始化列表的初始化顺序
两个变量距离构造函数由近到远,先初始化。C++的构造函数初始化列表的初始化顺序。两个变量距离构造函数由近到远,将。去构造,结果不能正常完成初始化。按照当前日期进行构造,对于。
2024-02-18 09:54:39
311
原创 编译QtCreator4.14.2
之前就把上面的模块都编译安装,否则编译。编译完成的可执行文件位于。3> 切换到源码路径执行。2> 打开命令行,执行。
2024-01-08 12:00:29
622
原创 编译QtBase-5.15.2
安装完成后可以看到我们编译的Qt5.15.2库。打开命令行,然后执行这个32位版本的配置文件。我的电脑配置大概 不到5分钟就能编译完成。解压源码后,再新建一个同名的。后缀名的文件夹作为编译目录。中间可能需要输入一个。
2024-01-08 09:43:18
820
原创 Qt 自定义类或结构体
在Qt中自定义类(没有继承自QObject或其子类)或结构体用于信号槽的参数传递或者QVariant存储值的时候需要使用。而且这个自定义的类或结构体需要有默认构造参数。
2023-12-22 13:03:14
979
原创 QScrollArea 动态添加控件
项目中写了一个控件,而且可以根据配置动态的往布局里面增加QWidget,由于内容比较多,很容易就超出了屏幕高度范围,所以就需要QScrollArea在动态添加控件的时候能自动扩容与滚动。
2023-12-12 10:22:34
1440
原创 verilog呼吸灯
上代码:module led( input clk, // 50MHz 输入时钟 output reg led // led 输出(低电平有效));//--------------------------------------------------------// 生成一个延迟,在一段时间内维持led输出一个不变的占空比`define MAX_DELAY_CNT 500000reg myclk;reg [23:0] delay_cnt;always@(posedge clk)be
2021-11-24 15:55:17
596
原创 fpga-quartus 第一个简单项目
我这里使用的quartus II 13 sp11. 新建项目下一步填写项目目录信息第一个编辑框What is the working directory for this project?就是项目文件的存放目录,New Project Wizard不会再新建项目名称命名的目录继续next选择 Device family 和 Avaliable devices 然后下一步选择仿真工具和支持的语言,然后next完成新建项目2. 新建verilog源文件输入verilog代码
2021-11-10 11:01:02
2764
原创 QT开发 - 信号槽写法
1. Lambda写法非重载函数QCheckBox *checkBox1 = new QCheckBox("check box1");connect(checkBox1,&QCheckBox::stateChanged, [=](int state) { m_statusBar->showMessage(QString("%1 state changed %2").arg(checkBox1->text()).arg(state));});重载函数这里,QComb
2021-09-23 10:26:15
494
原创 QT开发 - 布局
1. QHBoxLayoutWidget::Widget(QWidget *parent) : QWidget(parent) { QPushButton *button1 = new QPushButton("One"); QPushButton *button2 = new QPushButton("Two"); QPushButton *button3 = new QPushButton("Three"); QPushButton *button4 = ne
2021-09-17 16:57:37
286
原创 QT开发 - QTCreator创建子项目
新建文件或项目 -> 其他项目 -> 子目录项目填写父项目名称父项目创建完成创建子项目在父项目蓝色文件夹符号上右键,选择新子项目,然后按照常规创建项目的方式,就可以创建子项目了...
2021-09-17 13:25:01
1385
原创 QT开发 - 日志
1. 日志打印函数头文件: #include <QDebug>代码:qDebug()<<"hello world!";其他打印级别:qInfo(): 普通信息qDebug(): 调试信息qWarning(): 警告信息qCritical(): 严重错误qFatal(): 致命错误2. 不同级别日志打印控制需要在 *.pro 项目文件里面进行设置禁止debug级别日志输出:需要在*.pro文件里面增加:DEFINES += QT_NO_DEBUG_OUT
2021-09-17 11:04:42
275
原创 QT开发 - 文件操作
1. 常规读写文件QFile file(/usr/local/test.txt);file.open(QIODevice::ReadWrite);int file_size = file.size();char buf[1024];// 5种读取方法file.read(buf, 1024 < file_size ? 1024 : file_size);QByteArray readBuf = file.read(1024);file.readLine(buf, 1024);QByt
2021-09-17 10:50:18
413
原创 QT开发 - 控件字体设置
1. 加载特定字体将目标字体添加到项目资源下,可以参考这篇博文 添加资源void initFonts() { int index = QFontDatabase::addApplicationFont(":/res/fonts/Monaco.ttf"); // 加载特定字体 qDebug()<<"index="<<index; if(index != -1) { QStringList fontList(QFontDatabase::app
2021-09-17 09:04:22
2168
原创 QT开发 - 添加资源
1. 添加项目资源右键项目,选择Add New选择Qt -> Qt Resource File填写资源文件的名字完成后可以在项目路径中看到刚才创建的资源文件在资源文件上右键,选择Open in Editor点击 Add Prefix前缀改成 /在项目根路径下新建一个res文件夹,并且在res下新建fonts和imgsfonts目录用来存放字体文件资源,imgs用来存放图片资源将下载的字体文件拷贝到fonts目录添加字体文件到项目然后就可以在项目视图中看到刚
2021-09-17 08:49:43
418
原创 QT开发 - char*与QString转换
char*转QString方法一char *ch = "hello";QString str(ch);方法二char *ch = "world";QString str1 = QString::fromUtf8(ch);QString str2 = QString::fromLocal8bit(ch);QString str3 = QString::fromUtf16(ch);QString转char*方法一QString str("hello");QByteArra
2021-09-16 15:25:44
1836
原创 QT开发 - 本地数据库
1. 初始化需要在 *.pro项目文件里面添加 QT += sql#include <QSqlDatabase>QSqlDatabase database;database = QSqlDatabase::addDatabase("QSQLITE"); // 使用sqlite数据库database.setDatabaseName("BenpDB.db"); // 数据库名称if (!database.open()) // 如果数据库不存在则创建并打开,如果已存在则开{
2021-09-16 13:58:15
1036
2
原创 QT开发 - QWidget基本
1. 控制台打印信息头文件: #include <QDebug>代码:qDebug()<<"hello world!";2. 获取QWidget的窗口尺寸// mainwidget.hclass MainWidget : public QWidget{ Q_OBJECTpublic: explicit MainWidget(QWidget *parent = nullptr);signals:protected: void resizeE
2021-09-16 09:10:03
175
原创 全志A40i开发笔记 - u-boot启动内核
1. 生成 sunxi_mbr.fex(1) 生成 sys_partition.bin$ script sys_partition.fex(1) 生成 boot-resource.fex$ fsbuild boot-resource.ini split_xxxx.fex // 注意boot-resource.ini文件里面的斜杠方向,可能根据windows或linux平台需要修改调整...
2021-08-18 16:26:56
3376
原创 全志A40i开发笔记 - boot0(4)
boot0 启动 u-boot通过PhoenixSuit烧录的镜像,将boot0 烧录到了flash中偏移地址为8K的地方,而u-boot则被加了一个“头”:然后1K对齐,重新打包生成的u-boot文件叫做 boot_package.fex,被烧录到了 16400K 偏移位置处,而且作为备份还烧录了两个位置,另一个在 12288K 偏移处boot0跳转到u-boot之前会对 boot_package.fex前面的1K大小的结构头进行简单的校验关于 boot_package.fex文件的生成大概
2021-08-17 08:18:33
2508
5
原创 全志A40i开发笔记 - boot0(3)
memset函数与定义数组自动填充我在函数当中定义了这样个数组char buf[10] = {0};意思是定义一个长度为10的char数组,并且自动填充为0;编译的时候发现报错:提示未定义memset,what?那就再猜测一下吧,所谓的自动填充,可能就是自动调用memset来填充的然后我改了一下代码:char buf[10] = {0,0,0,0,0,0,0,0,0,0};手动填充后,编译成功...
2021-08-12 16:33:25
363
原创 全志A40i开发笔记 - boot0(2)
增加printf格式化打印字符串功能添加console.c文件#include <stdarg.h>#include <common.h>typedef unsigned int u32;void sunxi_serial_putc (char c);void puts(const char *s) { char *src = (char *)s; while(*src != '\0') { sunxi_serial_putc(*s
2021-08-12 15:00:13
541
原创 全志A40i开发笔记 - boot0(1)
boot0镜像文件分布如图:头部是一个大小0x2F8的结构体,然后是64字节的一个数组,后面才是真正的代码段刚开始编译的时候,发现始终无法在编译好的镜像头部找到 BT_head 和 boot0_hash_value ,后来发现是由于精简了代码,在代码中没有调用 BT0_head 和 boot0_hash_value 所以这两个块没有被链接进去,虽然在链接脚本中已经指定了这两个变量的位置,竟然也没有被编译进去,不知道修改编译器关于优化相关的参数会不会强制把他们两个链接进去。然后在代码中调用一下这两个变
2021-08-12 11:40:39
887
原创 Qt qml相关语法规则和易忘知识点总结(不断更新)
Qt qml相关状态#Qml中的语法规则#Qml中的易忘知识点状态 // 默认状态为“normal” state: "normal" states: [ State { name: "normal" changeState("normal") }, State { name: "sleep" changeState("sleep")
2020-09-03 09:06:22
710
objective-c基础教程
2018-01-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人