对于七月份刚刚入职的我来说,直接出差进入大型项目组无疑是一种巨大的考验,半个月的项目组现场开发,学到了不少东西,希望可以通过博客的方式一一记录下来,以便以后整理复习。
C++在实际项目开发中,接口的封装和调取是使用最为频繁的,我刚开始的工作就是给一个窗口写入具体操作效果的代码,并且调用相关接口,说实话第一次看到几百个.h、.cpp,从里面找对应接口的时候,内心很崩溃。之后的工作还是比较有挑战性的,UI窗口的设计,照着产品发布的图片比例一点一点调,并且通过样式表改变样式,这些实际操作时麻烦真的很多,还好有热心同事帮忙,学到了很多,最后是个体力活,HTTP协议里由于当初逻辑设计不规范,所以要进行逻辑完善,即使用try/catch语句和if语句来保证系统实际运行时输入错误数据或者空数据不会出现bug,而是直接弹出错误提示,大概也就加了2000多行代码吧(鬼知道我怎么半天写完的,头晕眼花)。
下面是具体的知识点复习:
QFileDialog::getOpenFileName(QWidget *parent = Q_NULLPTR, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = Q_NULLPTR, Options options = Options());
第一个参数有默认值0,可以省略;第二个参数就是打开以后对话框上方的标题;第三个参数是打开以后默认的打开目录,如果使用“.”就是打开程序目录,“/”就是打开根目录;第四个参数就是筛选的后缀名,可以指定某种类型的文件进行过滤;五六用的很少,我这里没有用到。QFileDialog::getSaveFileName()保存文件,参数列表同上。
XML文件的解析与修改:
QT中我主要用的Document来进行XML文件的解析与修改
下面代码段以后经常性查看:
ui->listWidget->clear();
ui->listWidget->addItem(tr(“无法添加!”));
QFile file(“my.xml”);
if (!file.open(QIODevice::ReadOnly)) return;
QDomDocument doc;
if (!doc.setContent(&file))
{
file.close();
return;
}
file.close();
QDomElement root = doc.documentElement();
QDomElement book = doc.createElement(“卷宗”);
QDomAttr id = doc.createAttribute(“编 号”);
QDomElement title = doc.createElement(“案件分类”);
QDomElement author = doc.createElement(“案件名称”);
QDomText text;