c++
腰椎客
一个想要做游戏却做了qt的学渣
展开
-
QScopeGuard--在作用域结束时资源释放逻辑
初识项目组有个go过来的大佬,再各种释放资源的时候特别不爽,c++咋就没有defer。打开关闭文件的时候,这种操作很常见。多个判断多次关闭的操作很多,也会很容易出现错误bool a(){ QFile f(m_path + "/data/test.html"); if (!f.open(QIODevice::ReadOnly|QIODevice::Text)) return false if (m_isFalse) { f.close(); return false;} f.clos原创 2022-03-02 11:04:13 · 535 阅读 · 0 评论 -
hdf5库使用中的bug---创建文件失败H5Fcreate failed
hdf5创建失败原创 2022-03-02 09:58:23 · 920 阅读 · 0 评论 -
QtConcurrent::map的错误记录
起因我有一个线程,在这个线程中处理一个list数据。这些操作也想放在不同的线程中处理,然后就选用了QtConcurrent::mapclass mydata;class computeData{ void s(mydata){ .... } void compute() { QList<mydata*> values;; QFuture<void> f = QtConcurrent::map(values, &computeDat原创 2021-11-19 16:36:55 · 460 阅读 · 0 评论 -
偷懒大法之--类模板
麻烦在工作中一些重复的代码总在发生,后面写的时候感觉好烦躁。譬如class a {pubilc:void insertS1(s1* data);int s1DataByIndex(s1* data);......void insertS2(s2* data);int s2DataByIndex(s2* data);......void insertS3(s3* data);int s3DataByIndex(s3* data);.....private:QList<原创 2021-03-02 11:04:03 · 76 阅读 · 0 评论 -
工作中遇到的问题(1)- QProcess无法打开空格路径可执行文件
QProcess无法打开空格路径可执行文件最近软件发布,老大说你这个exe怎么一致调用不起来。可是我在我的版本下面跑一直没有问题呀。然后跟出来的路径如此exePath = "d:\a b c\abc.exe"process->start(exePath ); //错误了因为无法打开带有空格的路径//修改后exePath = "\"d:\a b c\abc.exe\""process->start(exePath ); //正确 总结 :工作中小问题挺多的,注意各种情况的测试原创 2021-01-25 14:20:39 · 661 阅读 · 0 评论 -
开发笔记---自动注册工厂释放switch case
项目优化最近笔者在回顾自己项目代码的时候,发现写了一堆的switch ,case,不同的数据创建不同的数据类。发现代码,case1,case2等都是继承case基类。这也是简单的工厂模式。如果Type的类型较少,还凑合这用,过多的话,惨不忍睹,例如笔者的代码中就有20多行,不美观,也不实用,再增加新的类型的时候,还有重新在此添加,太麻烦。switch(type) {case 1:return case1;case 2:return case2;......}工厂模式属于创建型设计模式原创 2020-11-27 10:33:31 · 168 阅读 · 0 评论 -
netgen对于网格的局部处理和细化
局部处理这里的局部处理指点,线,面的大小nglib.h提供的接口Ng_OCC_SetLocalMeshSizemeshclass.hpp提供的接口RestrictLocalH//使用occ需要在pro中增加DEFINES +=OCCGEOMETRY \MSVC_EXPRESS\#include <occgeom.hpp>//nType为id的类型bool Wid...原创 2020-02-27 11:24:01 · 1485 阅读 · 8 评论 -
基于netgen的API对于OCC文件的加载和网格划分
OCC文件的加载过程netgen提供的API接口:提供了三类接口对于occ的几何文件,iges,step,brep文件的读取//包含的netgen的头文件namespace nglib{#include <nglib.h>}; QFileInfo fileInfo(fileName); QString fileSuf = fileInfo.suffix(); ...原创 2020-02-27 10:49:38 · 2027 阅读 · 9 评论 -
vs编译netgen
Netgen编译1.需求netgen下载-github下载地址或者 git clone https://github.com/NGSolve/netgen.gitocc编译下载(已经编译) --去我的资源里下载zlib–tcl–tk–2.配置netgen的Cmake2.1配置occ路径和occ库的路径use_occ–勾选2.2设置zlib路径2.3设置TCL,TK路径...原创 2020-02-27 10:32:35 · 1343 阅读 · 10 评论 -
vtk颜色映射之颜色插值
vtk颜色映射之颜色插值两张效果图:,第一张是没有设置插值。第二张是设置了。在这里插入图片描述处理方式:1.设置颜色的分块vtkSmartPointer hueLut = vtkLookupTable::SafeDownCast( datamap->GetLookupTable());hueLut->SetNumberOfTableValues(9);2.设置ma...原创 2020-01-03 10:35:39 · 1144 阅读 · 0 评论 -
LPCWSTR 和 LPCSTR群里大佬
1. 你清楚LPCWSTR 和 LPCSTR是什么类型吗?答:LPCWSTR是wchar_t,是一个unicode字符,有两个char那么长,LPCSTR是char2. 你知道这里网上为什么强转吗?答:QString里面存储的是unicode字符串,utf16()函数返回的就是unicode字符串的地址本身,但是类型是 unsigned short*,所以要强转到unicode的wcha...转载 2019-06-24 16:34:11 · 627 阅读 · 0 评论