- 博客(21)
- 资源 (8)
- 收藏
- 关注
原创 跨界竞争
《三体》里面有句话,叫做:我消灭你,与你无关。这句话真够嚣张跋扈,但却充满大智慧,说明了大趋势,揭示了整个人类世界前进和发展的基本规律。康师傅和统一方便面的销量急剧下滑,不过它们的对手真不是今麦郎,而是美团、饿了么等外卖。打败口香糖不是益达,而是微信、王者荣耀。在超市收银台这个消费场景,过去顾客在排队缴费的时候无聊就往购物篮里拿上两盒口香糖,而今天大家都在看微信、刷朋友圈、玩王者。...
2019-07-19 00:22:59 478
原创 firefox 火狐浏览器主页劫持解决办法
不知道安装了什么软件主页被篡改成 Lavasoft。在浏览器地址栏输入:about:config搜索 ad-aware, lavasoft,blekko,删除之。还是quora 好使,搜索的其他方案都不靠谱。...
2019-07-10 00:08:18 2587
转载 C++ 运算符优先级列表
运算符优先级列表:来自http://www.cppreference.com/operator_precedence.htmlrecedenceOperatorDescriptionExampleAssociativity1()[]->.::++--Grouping operatorArray accessMe
2013-05-07 13:58:00 339
转载 SVN的标准目录结构:trunk、branches、tags
我们在一些著名开源项目的版本库中,通常可以看到trunk, branches, tags等三个目录。由于SVN固有的特点,目录在SVN中并没有特别的意义,但是这三个目录却在大多数开源项目中存在,这是因为这三个目录反映了软件开发的通常模式。trunk是主分支,是日常开发进行的地方。branches是分支。一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branche
2013-02-27 23:34:44 484
转载 vc2008中使用SendMessage正确发送自定义消息的方法
首先,因为需要用到SendMessage这个函数,在此做一介绍:一、SendMessage( HWNDhWnd, //消息传递的目标窗口或线程的句柄。 UINTMsg, //消息类别(这里可以是一些系统消息,也可以是自己定义,下文具体介绍,) WPARAMwParam, //参数1 (WPARAM 其实是与UINT是同种类型的, //在vc
2013-02-27 23:03:22 938
转载 Detecting Media Insertion or Removal
USB设备的检测:http://msdn.microsoft.com/zh-cn/library/aa363215.aspxWindows sends all top-level windows a set of default WM_DEVICECHANGE messages when new devices or media (such as a CD or DVD) ar
2013-01-28 15:07:07 388
转载 VC- Project Setting-Debug-Project Option
-优化- /O1 最小化空间 minimize space /Op[-] 改善浮点数一致性 improve floating-pt consistency /O2 最大化速度 maximize speed /Os 优选代码空间 favor code space /Oa 假设没有别名 assume no aliasing /Ot 优选代码速度 favor code speed
2013-01-25 00:05:11 476
原创 关于GDI双缓冲(GDI double buffering)
GDI中使用双缓冲可以明显的降低图像的闪烁。简单的意思就是:分配内存DC一份、画图先在兼容的内存DC中进行(CreateCompatibleDC),画好之后,还不能直接显示,还要找个中介(CreateCompatibleBitmap),最后以bitmap的形式push(BitBlt)到显卡显示。不像直接绘图,每步都要直接刷新(输出至显卡,这也是flicker的原因)。使用双缓冲的步骤如下:
2013-01-18 23:39:04 486
转载 MFC之CFileDialog
http://www.cnblogs.com/Vicky-Lee/archive/2011/09/07/2169986.html以前的做法都是在程序中写成固定的,现在不能这么来了。CFileDialog类封装了Windows常用的文件对话框,提供个一种简单的与windows标准相一致的文件打开和文件存盘对话框功能。要使用CFileDialog类,首先要构造一个对象,项目实例:T
2013-01-05 22:43:46 451
原创 关于main函数的参数int argc char* argv[]
经常看到有些程序main函数带参数,一般都有这几种形式:int main(int argc, char *argv[])int main(int argc, char **argv) argc -- 命令行参数 总个数,包括 可执行程序名。argv[i] -- 第 i 个参数。argv[0] -- 可执行程序名。#include using namespace s
2013-01-04 22:07:01 360
原创 VC2008在console程序中使用MFC类
在向导里面就可以选。大概包含以下:#include "targetver.h"#include #include #define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // 某些 CString 构造函数将是显式的#ifndef VC_EXTRALEAN#define VC_EXTRALEAN // 从 Wind
2013-01-04 21:40:17 988
转载 CMFCMenuBar自定义菜单字体
作者:朱金灿来源:http://blog.csdn.net/clever101/ 在VS 2008之前的MFC版本,自定义菜单字体是一件比较繁琐的事情,常规的做法是自绘菜单项,即定义一个CMenu的派生类,重载MeasureItem和重载DrawItem两个函数。我发现利用VS2008 Feature Pack可以很轻易地做到这件事。具体就是使用CMFCMenuBar类的接
2013-01-01 22:01:59 1544
转载 查看MFC的源代码(bsc文件)
bsc文件很有用。。。。在vc6开发界面中,打开文件,然后选择C:/Program Files/Microsoft Visual Studio/VC98/MFC/SRC/MFC.bsc(具体目录还要根据自己VC的安装路径)。打开文件以后,选择TOOLS ->Source Browser 然后在identifier中输入你想要查看的类,变量,宏或函数名,然后在select query 中
2012-12-28 00:04:16 1372
转载 VC++编写的MFC程序不自动创建空白窗口
就是解决这样的一个问题:经常我们在MFC中创建MDI程序时,默认会打开一个空白的窗口,现在,由于某种原因,我们不需要这个窗口。以下转自:http://jingyan.baidu.com/article/1876c852d5cba9890a13766f.html在APP类中,在ProcessShellCommand调用之前加 cmdInfo.m_nShellCommand =CCommand
2012-12-22 23:44:15 488
原创 关于制作office2007 style的对话框
今天写程序的时候发现一个问题,主框架用了一个界面(feature pack)是2007 style的,但是在里面在写对话框的时候就是XP style了。于是在网上搜了下,大概情况如下:1、用SDI formview去模拟对话框;http://blog.csdn.net/akof1314/article/details/57140502、通过用框架类来实现对话框; http://bl
2012-12-22 00:13:48 666
原创 在vc6和vc2008对话框程序中加入菜单
1.VC6首先,和其他的一些特性有些不一样:不管是VC6还是2008,在Dialogue的MFC Wizard中是找不到关于加菜单的选项的。只能将工程创建了之后再加。(1) 利用AppWiazird建立一个基于对话框的应用程序Main。(2) 在Main中利用菜单生成器创建一个菜单栏IDR_MENU,如图1所示。(3) 在对话框资源中单击鼠标右键,在弹出的
2012-12-21 01:21:05 1534
转载 #include "stdafx.h"与*.pch文件出错解决方法
一个工程的示例预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里。这些预先编译好的代码可以是任何的C/C++代码--甚至可以是inline函数,只它们在整个工程中是较为稳定的,即在工程开发过程中不会经常被修改的代码.。 为什么需要预编译头文件?一言以蔽之:提高编译速度。一般地,编译器以文件为单位编译,如果修改了一工程中的一
2012-12-19 01:18:57 924 1
转载 关于extern "C"---实现C与C++的混合使用
在网上找了几个extern "C"的介绍,感觉这个最浅显易懂,所以记下来。因为C、C++的编译器对函数名的修饰不同,为了保证在C、C++中编写的函数能够被互相调用,所以采用这个链接指示符以int func(int, int)为例,C的编译器会将名字改编为_func, 而C++的编译器会改编为_func_int_int 或_funcii(各编译器不同)。如果这个函数在
2012-12-01 16:56:46 281
转载 关于栈溢出(win)
关于栈溢出。转自http://blog.163.com/shao_yuru/blog/static/130517606201146112022223/ 一、提出问题 还是先看一段代码:#include #include //Have we invoked this function? void why_here(void){ printf("w
2012-11-28 21:10:35 402
原创 MEMORY_BASIC_INFORMATION结构
MEMORY_BASIC_INFORMATION这个结构中的两个成员的区别:typedef struct _MEMORY_BASIC_INFORMATION { PVOID BaseAddress; PVOID AllocationBase; DWORD AllocationProtect; SIZE_T RegionSize; DWORD State; DWORD P
2012-11-23 22:42:23 5348 1
原创 windows线程池
我们知道,线程的频繁创建和销毁是比较消耗系统资源的,因此,OS在处理一些任务时,发明了线程池(ThreadPool)这个东西。线程池是若干线程的容器,负责调度和管理这些线程,而这些线程用于处理一些事物请求。有了线程池,我们很多情况下不需要自己createthread。线程池需要具备的几个元素1) 线程池要有个列表,来管理多个线程对象。2) 线程池要提供获取空闲(ID
2012-11-22 16:42:00 999
Proteus_入门教程
2011-02-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人