07 2018 档案

摘要:如图。 解决:在AS安装目录下,找到对应的程序【jdk是多少位就打开多少位的】 阅读全文
posted @ 2018-07-31 16:04 朱小勇 阅读(1172) 评论(0) 推荐(0)
摘要:#define MIN(a,b) (a<b ? a : b) #define MIN(a,b) (a>b ? a : b) 阅读全文
posted @ 2018-07-27 10:49 朱小勇 阅读(296) 评论(0) 推荐(0)
摘要:你要存储某个信息,全世界的节点都帮你存,存的人会获得利益,就是挖矿 阅读全文
posted @ 2018-07-27 09:15 朱小勇 阅读(284) 评论(0) 推荐(0)
摘要:在同一个qml文件中,如果同时import了Qtquick1和2,那么谁在后面,谁起作用 阅读全文
posted @ 2018-07-26 18:00 朱小勇 阅读(1033) 评论(0) 推荐(0)
摘要:1、键盘加Text 2、按钮+信号 3、TabBar 4、按钮+Compnent+风格 5、矩形+颜色渐变+旋转 6、通过设置半径来画圆 7、简单的图片浏览器 8、颜色动画ColorAnimation 9、MouseArea拖动 ps:试过给Window或者ApplicationWindow添加Mo 阅读全文
posted @ 2018-07-26 16:43 朱小勇 阅读(630) 评论(0) 推荐(0)
摘要:这里的控件是显示的元素 1、Item:一切的基类 Item { Image { source: "tile.png" } Image { x: 80 width: 100 height: 100 source: "tile.png" } Image { x: 190 width: 100 heigh 阅读全文
posted @ 2018-07-25 15:59 朱小勇 阅读(6963) 评论(0) 推荐(0)
摘要:一、两种方式 二、方式1【对窗口的控制权在QML】 三、方式2【对窗口的控制权在C++】 阅读全文
posted @ 2018-07-24 17:31 朱小勇 阅读(721) 评论(0) 推荐(0)
摘要:1、现象 经常看到有些代码在delete之后赋值为null 2、原因 C++标准规定:delete空指针是合法的,没有副作用。 所以我们在Delete指针后赋值为NULL或0是个好习惯。对一个非空指针delete后,若没有赋NULL,若再次delete的话,会报错 阅读全文
posted @ 2018-07-24 16:24 朱小勇 阅读(739) 评论(0) 推荐(0)
摘要:一、概念 单例模式是一种常用的软件设计模式。它的核心结构只包含一个被称为单例的特殊类。它的目的是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享 二、类型 懒汉式、饿汉式和双重锁的形式。 懒汉:第一次用到类的实例的时候才回去实例化。饿汉:单例类定义的时候就进行实例化。 阅读全文
posted @ 2018-07-24 14:51 朱小勇 阅读(318) 评论(0) 推荐(0)
摘要:一、什么匿名对象 Class A{ .... }; A* a = new A;//a是对象 new A;//在内存中生成的对象没有任何指针或者引用指向,这就是匿名对象,匿名对象在作用块结束之后就没gc回收 二、匿名对象的使用 以QTableWidget举例,给某个item设置内容,用的是: 第三个参 阅读全文
posted @ 2018-07-20 17:49 朱小勇 阅读(1156) 评论(0) 推荐(0)
摘要:一、疑问 突然想到,类似于QTcpsocket和QSerialport这类对象,如果是在A线程中new的,那就不能在其他线程中访问。我一般是这样做的: 封装一个QObject子类,放这些对象进去,然后通过信号与槽发送和接收数据。 但是如果是一个其他类型,比如一个Qlist或者链表,加上锁之后就可以不 阅读全文
posted @ 2018-07-19 15:31 朱小勇 阅读(1230) 评论(0) 推荐(0)
摘要:这是空指针,比如: A* a=NULL; a->fun();//会提示标题错误,因为a没有分配空间 阅读全文
posted @ 2018-07-19 15:22 朱小勇 阅读(2177) 评论(0) 推荐(0)
摘要:功能:可以预览qml文件的界面 使用:qmlscene myapp.qml 阅读全文
posted @ 2018-07-13 17:54 朱小勇 阅读(1297) 评论(0) 推荐(0)
摘要:QVector<double> tempX ; qSort(tempX.begin(), tempX.end());//从小到大排序 阅读全文
posted @ 2018-07-12 19:59 朱小勇 阅读(5332) 评论(0) 推荐(0)
摘要:new:为对象分配空间。 首先,直接声明一个变量:byte[] test;只是有了一个变量名字,而它是没有实际空间的,需要分配空间; 分配空间的方法: 1、使用new,byte[] test = new byte[200];//这里需要制定test的大小 2、使用C#一些返回数据的方法,如:test 阅读全文
posted @ 2018-07-10 17:32 朱小勇 阅读(1965) 评论(0) 推荐(0)
摘要:CDC* pdc; CRect rcBounds; 1、 画直线 pdc->MoveTo(rcBounds.TopLeft());//将画笔移动到左上角这个点,使用这个点作为起点画图 pdc->LineTo(rcBounds.BottomRight());//从起点画线画到右下角这个点 2、将所有点 阅读全文
posted @ 2018-07-09 14:01 朱小勇 阅读(889) 评论(0) 推荐(0)
摘要:前篇文章是调用非托管,比较复杂,这里是调用托管,很简单【所以在遇到非托管dll时可以通过二次封装成托管的方式,再通过这边文章来使用】 1、注意这是基于COM的ocx或者dll,所以用regsvr32先注册 2、新建C#winform工程 3、在解决方案中的引用中,右键添加引用 如果是注册了的,在CO 阅读全文
posted @ 2018-07-09 11:11 朱小勇 阅读(731) 评论(0) 推荐(0)
摘要:1、新建工程 注意选择显示时注册,免得后面又去手动注册 2、工程解释,一般ocx是看类视图而不是解决方案 ①、xxxApp:类似整个工程的入口,有xxxApp.h和xxxApp.cpp,工程的初始化,注册反注册,一般不用管 ②、xxxCtrl:核心代码处,属性、方法、函数的声明及实现 ③、xxxPr 阅读全文
posted @ 2018-07-09 11:00 朱小勇 阅读(1068) 评论(0) 推荐(0)
摘要:原因: 将两个不同的类型进行了比较,如: int a;unsigned short b; if(a>b)... 解决:改为同一种类型 阅读全文
posted @ 2018-07-06 14:50 朱小勇 阅读(1230) 评论(0) 推荐(0)
摘要:解决办法:删除C:\ProgramData\Package Cache快捷方式 阅读全文
posted @ 2018-07-06 10:14 朱小勇 阅读(758) 评论(0) 推荐(0)
摘要:以C#开发周立功CAN举例,在官网下载了周立功的demo 一、C++头文件样子 //接口卡类型定义#define VCI_PCI5121 1 //一些结构体定义 typedef struct tagRemoteClient{ int iIndex; DWORD port; HANDLE hClien 阅读全文
posted @ 2018-07-05 14:25 朱小勇 阅读(5194) 评论(0) 推荐(0)
摘要:1、函数声明为引用类型 int Discover(std::vector<tDeviceInfo>& pDeviceInfo); 2、参数声明为指针类型 std::vector<DeviceData::DeviceInfo>* mDeviceInfo; 3、调用,指针转引用 Discover(*mD 阅读全文
posted @ 2018-07-05 10:34 朱小勇 阅读(4017) 评论(0) 推荐(0)
摘要:1、现象 在c++类中,有些成员函数在声明时,后面加了const,如 2、作用 ①、提高程序可读性,可以一眼看出此函数不能修改类成员变量; ②、提高程序可靠性,此函数试图修改成员变量时,编译器会通不过 阅读全文
posted @ 2018-07-05 09:20 朱小勇 阅读(1014) 评论(0) 推荐(1)
摘要:Fun(const Type& type); 在引用传递的时候,在函数内部改变参数,会改变参数实际值。 加上了const就不能被修改。 阅读全文
posted @ 2018-07-04 15:14 朱小勇 阅读(3596) 评论(0) 推荐(0)
摘要:一、来源 在一个项目中,拿到了一个demo,看起来像是C#,又像是C++,部分截图如下 1、界面【C#的winform】 2、mian入口,是cpp 3、解决方案 二、猜测 一开始以为是C#工程,因为有winform;后来觉得是C++工程,因为源文件都是.h\.cpp,而且有include【c#没有 阅读全文
posted @ 2018-07-04 11:38 朱小勇 阅读(2763) 评论(0) 推荐(0)
摘要:一、托管:如果一个动态库本身是基于.NET的,那么可以直接在工程引用里右键添加引用,如微软的COM技术【因为你依托的是微软的框架,所以需要regsvr32注册】 二、非托管:如果不是基于.NEt的,那么需要使用DllImport技术,或者通过MFC把这个dll封装成OCX转为COM【如C++写的DL 阅读全文
posted @ 2018-07-04 10:40 朱小勇 阅读(1289) 评论(0) 推荐(0)
摘要:转:https://www.cnblogs.com/zhaoqingqing/p/5468072.html 前言 写这篇文章的目地是为了让更多的小伙伴对VS生成的工程有一个清晰的认识。在开发过程中,为了赶进度,并不是每个人都有学习的时间。 但如果上层项目管理人员对这些工程目录不熟悉的话,把VS编译的 阅读全文
posted @ 2018-07-04 10:16 朱小勇 阅读(11637) 评论(0) 推荐(2)
摘要:以C++\UDP开发为例 1、C++只是一种语言,是面向对象的,程序员可以很方便使用它的继承、封装、多态等特性完成编程。C++只给我们提供这些语法,和一些算法等。 2、我们开发UDP可能是windows上的,也可能是linux上的,无论是哪种操作系统我们都可以找到对应提供UDP的类库,如window 阅读全文
posted @ 2018-07-04 09:47 朱小勇 阅读(229) 评论(0) 推荐(0)
摘要:INSERT,C++ 1、插入指定列 sqlStr = QString("INSERT INTO DPU1OverLimite([time],[ERR_type],[Want_Value],[Real_Value])"\ "VALUES (%1,'%2',%3,%4)").arg....; 2、插入 阅读全文
posted @ 2018-07-02 13:59 朱小勇 阅读(379) 评论(0) 推荐(0)