2014-07-02 06:37
⁄ 工业·编程
⁄ 共 911字
谁都知道,站在山顶上,就能比山高。在一定的基础上开发一个软件,大多时候都比从头开始更容易、更迅速。但是,如何形成这样的基础,如何产生更好的技术基础,这是个问题。很多人和公司都进行过这样的技术积累工作,本文将分享一些这方面的想法,与大家探讨。
保留一堆程序,算不上技术积累。很多人可能会遇到这样的情况:你新到一家软件公司工作,部门的主管给你一堆程序,说你先看看,以后你负责这一块东西。这个程序最初是谁...
软件之路, 软件团队阅读全文
2014-07-02 05:44
⁄ 工业·编程
⁄ 共 733字
用在类成员函数的声明和定义中,表示函数可以对const对象进行操作,但是不能改变数据成员的内容.
#include<iostream>
using namespace std;
class A{
int data;
public:
A(int da=100):data(da){}
...
c++阅读全文
2014-07-02 05:35
⁄ 工业·编程
⁄ 共 724字
在VS的工程中常常要设置头文件的包含路径,当然你可以使用绝对路径,但是如果你这样设置了你只能在你自己的机器上运行该工程;如果其他人拷贝你的工程到其他机器上就可能无法运行,这个是因为你在建工程时可能把工程放在了E:盘,但是其他人可能会把工程放在其他根目录下,这样会导致找不到头文件问题。
对于新手,在设置绝对路径时往往会犯浑,他们不清楚这里的“相当”究竟是以什么...
visual_studio阅读全文
2014-07-01 06:29
⁄ 工业·编程
⁄ 共 863字
其实无论在子线程还是主线程中,设置的钩子都是一样的。但是,如果只是像在主线程中那样调用完SetWindowsHookEx函数就以为没事了,那你有可能什么也钩不到。如果你设置的是鼠标钩子,你还会看到鼠标反应迟顿。这是为什么呢?
前些日子我就遇到过这事,在网上搜了半天也没找到解决方案。无奈,自己仔细研究,找到原因了,非常简单,与大家分享。
答案就是,调用完SetWindowsHookEx后,子线程中要启动消息泵,不能Sleep在那里,也...
Hook, 消息机制阅读全文
2014-07-01 06:25
⁄ 工业·编程
⁄ 共 1214字
在Windows应用程序开发中,有很多地方使用了回调函数。一般的开发并不关心谁来调用这些函数,但如果开发复杂的多线程协作处理程序,或者研究操作系统中程序的“操作权限”问题,您就需要知道您写的这段代码是由谁来调用的,在哪个线程或进程中执行的。
最常见的就是Windows消息响应函数。一般的书本并不讨论这些函数是如何被调用的,只是说消息产生时,这些函数将会执行。初学者也许会以为,如果两个消息一起发出,那么它们的响应...
回调函数, 消息机制阅读全文
2014-07-01 06:10
⁄ 工业·编程
⁄ 共 1658字
只有在使用MFC框架时才有UI线程和工作者线程之分。UI线程与工作者线程的区别是操作系统为UI线程创建并维护了一个消息队列。
其实线程在创建时(无论是API还是MFC),都是工作者线程。当线程调用发送消息或提取消息或图形用户界面相关的函数时,系统才为其创建一个消息队列和THREADINFO结构,这时的线程才称为UI线程。
VC开发的控制台程序的主线程是工作线程,其他程序的主线程为UI线程。_beginthreadex/CreateThread等函数创建...
多线程编程阅读全文
2014-07-01 05:55
⁄ 工业·编程
⁄ 共 6039字
作者注:
由于本人对Windows底层机理了解不深,本文如有错误,敬请指正。
金旭亮
================================================...
多线程编程阅读全文
2014-07-01 05:47
⁄ 工业·编程
⁄ 共 5957字
目标: 能够熟练掌握QML的开发。
第一天
QML是什么?
官方有很标准的定义,我个人觉得它是一个脚本语言,能够通过该脚本语言创建动态的场景,有点类似于FLASH。
为什么要学习QML?
因为现代程序对界面的需求越来越高,而一般的C++界面设计比较复杂,所以需要一种能够快速建立界面,并且能够很好的与下层逻辑进行衔接的方案,QML就满足了这样的需求。
QML初步理解:
看了QML的一些示例代码,感觉QML是一种脚本语言,用于动态...
QML, Qt, 学习笔记阅读全文
2014-07-01 05:10
⁄ 工业·编程
⁄ 共 2105字
首先声明, 这里的工作线程与UI线程是相对的,即没有任何窗口的. 如果需要与主线程或其它辅助线程通讯,有几种方法如事件,消息,信号等,也可以是以上几种方法的综合运用.下面就列出以下3种通讯方法的代码框架
(1)只用消息通讯
DWORD ThreadProc(LPVOID lParam) { //创建线程消息队列 MSG msg; PeekMessage(&msg, NULL, WM_USER, WM...
多线程编程阅读全文
2014-06-30 05:26
⁄ 工业·编程
⁄ 共 732字
在使用 VC 链接 dll 时,通常需要一个导入库文件(.lib),但有时我们只有一个 dll 文件,怎么办呢?
通常,在链接库文件时,需要一个 (.lib)文件,lib 文件分为两种:一种为静态链接库(Static Libary,以下简称“静态库”),另一种为动态连接库(DLL,以下简称“动态库”)的导入库(Import Libary,以下简称“导入库”)。VC 在链接 dll 时,需要根据导入库(.lib)来定位 dll 中的符号...
软件开发阅读全文