10 海的神话

尚未进行身份认证

每天进步一点点

等级
TA的排名 9w+

QML自定义模态窗口

最近接手的新客户端项目是用QML做的界面。既然是客户端,就需要用到各种弹窗,自然少不了自定义各种样式的弹窗。模态窗口是最常用的弹窗之一,以下是我自定义的两种模态窗口实现。第一种是基于Window,第二种三基于Rectangle,而我的项目代码中不知道什么原因大部分都是用了Rectangle实现。//基于Window//WindowTemplate.qmlWindow { i...

2019-10-04 20:41:46

QHostInfo检测网络

平时,我们检测网络是否连接,一般都是用ping命令。实际开发中,经常也需要检测网络状态。最近之项目过程中就需要实现这一的功能,在网络断开时给出相应的用户提示。QHostInfo给我们提供了一个方便的接口,实现这一的功能。话不多说,先上一段代码demoNetWorkTest *NetWorkTest::GetInstance(){ static NetWorkTest ins...

2019-10-03 13:40:31

lua源码分析:字符串

字符串类型typedef struct TString { CommonHeader; lu_byte extra; 短字符串保留字 lu_byte shrlen; 短字符串长度 unsigned int hash; 字符串hash值 union { size_t lnglen; 长字符串长度 stru...

2019-05-13 23:44:07

lua源码分析:lua的数据类型

Lua是一个小巧的脚本语言。也被广泛应用,比如游戏开发。引擎用c++,经常变动的业务层用lua实现。做了几年的lua应用开发。最近想研究一下lua的具体实现,深入的了解lua。lua版本:5.3.5Lua特性:可移植性 良好的嵌入性 非常小的尺寸 高效,速度快Lua源码大体分为三个部分:虚拟机核心、内嵌库以及解释器、编译器Lua 虚拟机工作流程1.将 Lua代码进行词法...

2019-05-12 17:32:17

leetcode:数组中重复的数据

给定一个整数数组 a,其中1 ≤ a[i] ≤n(n为数组长度), 其中有些元素出现两次而其他元素出现一次。找到所有出现两次的元素。你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗?示例:输入:[4,3,2,7,8,2,3,1]输出:[2,3]思路:这类求次数的题,我们很容易想到用额外数组进行计数统计。但是显然不符合题目要求,题目要求不能用额外空间。...

2019-05-04 11:14:15

leetcode:无重复字符的最长子串

给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最...

2019-05-02 13:16:03

electron学习笔记:electron入门

1.关于electronelectron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将chromium和node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。 2.最基础的electron程序基础的Electron程序三个文件:package.j...

2018-07-31 21:07:04

深入理解C++多态

面试必问题:c++如何实现多态。C++多态实现方式:基类定义虚函数,子类继承基类,并重写虚函数。虚函数放在虚函数表,类对象都有一个虚函数指针指向虚函数表。虚函数表真正的函数地址和虚函数指针都是在构造函数中进行初始化的。即子类重写基类的虚函数后,子类的虚函数表中保存的地址是子类的虚函数地址。子类对象的虚函数指针在构造函数中初始化,指向子类自己的虚函数表。1、对象的静态类型:对象在

2017-12-30 23:45:09

关于虚函数的面试题

class A{public:void sayhello(){cout }private:};class B{public:virtual void sayhello(){cout }private:};int main(){A *pa = NULL;pa->sayh

2017-12-21 21:51:15

jd手机信息爬虫

最近在自己学习python和研究网络爬虫,自己用scrapy实现了简单的爬虫,爬取京东手机信息,值爬了第一页的手机名称,价格,手机店名,成交量等信息。不是很完整,后续继续研究,一步一步晚上。1.      使用的IDE是pycharm,环境比较难折腾2.      由于是动态网页,开始的时候怎么也获取不到价格等信息,所有用了PyQt5加载网页,然后再获取信息。3.      把信息导出

2017-09-18 21:37:52

window线程池

window提供了线程池机制,方便开发。这些线程池函数允许我们做以下事情:1.以异步方式来调用一个函数。2.每个一段时间调用一个函数3.当内核对象触发时调用一个函数4.当异步IO请求完成时调用一个函数一、以异步方式调用一个函数:相关API:TrySubmitThreadPoolCallback回调函数原型:VOID NTAPI SimpleCallback(PT

2017-09-03 00:11:02

Window下编译libcurl

Window下编译:方法一:1.       下载并解压到文件夹(我到文件夹为curl-7.54.1)2.       进入目录curl-7.54.1->projects->windows.目录下面有各自vs版本对应到工程,选择适合自己已经安装到vs版本,打开工程。3.       解决方案下面包含两个工程,curl和libcurl。Libcurl就是我们要用到库4.     

2017-08-02 21:59:21

各种api 的坑

最近在做新的项目,设计打文件传输问题,lua和c++交互。踩了不少坑,也收获很多。1.luaL_tointeger 和lua_tonumber在把大文件的大小传给c++时,用lua_tointeger取出,导致计算出错。后来经过仔细看了lua api文档,才发现,这个接口转出的结果是整形,长度明显不够。最终只能用lua_tonumber解决问题。lua_tointegerlua_I

2017-07-12 23:23:25

lua模块

来公司一年多了,一直在用lua做开发。公司有封装好的lua接口,没有源码,所以只能自己研究相关接口的大概原理。关于lua模块,网上有很多博文,大概的实现方式无外乎是,在单独的lua文件定义一个table,然后通过return 返回。用的时候通过require 加载。这样可行,但是有点繁杂。我们知道模块是通过table方式存在。可以通过把table注册到全局表,在需要用到的地方再取出

2017-06-07 08:42:03

第一章:温故而知新

1.程序的虚拟地址和物理地址存在一种映射关系,这种映射说由MMU(Memory Manager Unit)完成的。2.分页说把地址空间人为的分成固定大小的页,每一页的大小由硬件决定。目前几乎所有的PC页大小都是4KB,我们把虚拟空间的页叫做虚拟页,VP。物理内存页叫做物理页,PP。磁盘中的页叫做磁盘页,DP。3.线程说轻量级的进程,说程序执行流的最小单元。一个标准的线程由线程ID,当前指令

2017-03-02 09:33:54

lua 编译,执行与错误

1.dofile是lua内置的函数,用于执行代码块。2.loadfile从一个文件加载lua代码块,但它不会运行代码,只是编译代码,然后将编译的结果作为一个函数返回。3.loadstriing类似于loadfile,它从一个字符串中读取代码,而非从文件读取。loadstring总是在全局环境中编译它的字符串。i = 32local i = 0 f = loadstring("i

2016-10-26 22:08:56

lua函数

Lua的函数定义一般形式如下:optional_function_scope function function_name( argument1, argument2, argument3..., argumentn)function_bodyreturn result_params_comma_separatedend在 Lua 编程语言的方法定义包括方法头和方法体。这里是方法的所有

2016-10-25 19:56:32

const 和全局变量

C++中,全局变量的存储都是静态存储。但是链接性质可以有外部链接和内部链接。默认情况下是外部链接,如果在定义前加上 static ,则变为内部链接。//file1.cpp int val1 = 5;extern int val2;void fun1(){    cout    cout    cout}//file2.cppint val2 

2015-12-20 13:13:52

qml实现简单记事本程序

最近自学qml,尝试用qml写个小程序,熟悉qml简单用法#ifndef FILERWRITER#define FILERWRITER#include #include #include #include #include#include//该类主要实现文件的读写功能class FileRWritter:public QObject{ Q_OBJECT

2015-11-26 19:50:28

vs2008创建xpcom组件

百度好多都没有找到window下使用xpcom开发的完整例子,自己写了一个首先,创建简单计算器组件calculator,新建接口文件ICalculator.h,类定义头文件Calculator.h和实现文件Calculator.cpp,需要以下配置设置:1、工程属性页——连接器——输入 ——附加依赖项    ,添加链接库 embedstring.lib nspr4.lib plc4.l

2015-11-11 11:49:26

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。