- 博客(81)
- 资源 (4)
- 收藏
- 关注
原创 make: *** No rule to make target `all'. Stop.
错误:make all make: *** No rule to make target `all'. Stop. 解决方式:右键项目-->properties-C/C++ Build-->Builder settings 此时可看到Builder Type是不可选的, 且Makefile gen
2015-03-15 17:40:29
1124
原创 VC编译错误:uafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPA
VC编译错误:uafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已经在 LIBCMT.lib(new.obj) 中定义 2010-03-30 21:47:54| 分类: 编译错误|举报|字号 订阅1>
2015-03-15 16:54:18
710
转载 VC 的 warning LNK4221 警告
今天编译静态链接库时,VC提示了 LNK4221 警告。虽然没什么影响(起码暂时没遇到),也特别去查了下警告的由来。 该警告的中文提示是: xxx.obj : warning LNK4221: 此对象文件未定义任何之前未定义的公共符号,因此任何耗用此库的链接操作都不会使用此文件。 不得不说这个翻译真是非常的晦涩,令人费解。可能,
2015-03-15 16:05:46
5708
转载 安装DirectX SDK时出现Error Code:s1023 的解决方案
今天安装DXSDK_Jun10时(下载地址:http://download.microsoft.com/download/A/E/7/AE743F1F-632B-4809-87A9-AA1BB3458E31/DXSDK_Jun10.exe),出现下图所示错误Error Code:s1023 错误原因:计算机上有安装过更新版的Microsoft Visual
2015-03-14 23:34:32
610
转载 使用SetUnhandledExceptionFilter让程序优雅的崩溃
虽然是大公司的产品,QQ它还是会在我们的折腾下崩溃的,但是它总是崩溃的很优雅,还要弹出自己的对话框来结束。并且发送报告,去掉了系统默认的发送报告的对话框。所以一拍脑袋,想让自己的程序崩溃的体面一点。自己想了大概的思路,觉得可以用一个进程来监控目标程序。的确也可以拿到了目标程序崩溃的信息,知道它什么时候崩溃的,也可以做额外的操作,但是这样是没办法把默认的发送错误的对话框去掉的。然后又有人
2015-01-27 23:07:14
478
转载 来自 COM 经验的八个教训
发布日期: 5/20/2004 | 更新日期: 5/20/2004Jeff Prosise在日常工作中,我看到过许多由不同开发人员编写的 COM 代码。我为许多富于创造性的使用 COM 的工作方式感到惊讶,有一些使 COM 工作的巧妙代码可能连 Microsoft 都没有想到。同样,看到一些错误一次又一次地重犯,使我免不了心灰意懒。这些错误很多都与线程和安全有关,完全不成比例,而这也正
2015-01-27 00:18:56
591
转载 如何查看项目svn路径
如何查看项目svn路径之前获取项目代码后 又一次由于记住了密码,而有需要checkout其他项目代码,而用户名和密码两个项目又不一样,没办法只能清除缓存什么的了,结果发现自己清除了所有的svn本地数据,包括用户名密码以及项目svn路径.后来有别的同事需要checkout代码,向我要地址,于是我就很成功的不知道那个项目的svn路径了(平时看路径都是直接鼠标右键checkout然后
2014-12-06 11:05:36
9981
转载 svn is already a working copy for a different URL
svn is already a working copy for a different URL 2009-03-18 17:36:54| 分类:Flex开发 |举报|字号 订阅运行更新脚本的时候出现如题的错误,google了一把找到了解决办法。首先说明下原因:出现这种情况大多是由于原有的目录是使用svn更新的,并且指定
2014-09-15 23:30:37
7467
转载 new(std::nothrow) 应用场景
C++ 中 std::nothrow 有什么样的应用场景呢 知乎已经不好玩了,不是你长篇大论就能留… 对于比较健壮的代码来说,nothrow使用的情况比直接new多很多吧。 直接new如果失败要抛出异常的,结果就是为了健壮性代码里到处都是try。 所以一般健壮的分配方式都用new (nothrow) xxx的(当然也有用malloc等的),之后判断NULL就ok 还有在new出现异常,表示内存几经
2014-08-28 12:37:50
1259
转载 CreateProcess的用法
使用编译器vs2008。第一、第二个参数的用法:例子:使用ie打开指定的网页。注意第二个参数是 可执行文件+命令行参数 #include "stdafx.h" #include #include int main(int argc, char* argv[]) {
2014-06-30 15:23:29
615
转载 慎用USES_CONVERSION
慎用USES_CONVERSIONUSES_CONVERSION是ATL中的一个宏定义。用于编码转换(用的比较多的是CString向LPCWSTR转换)。在ATL下使用要包含头文件#include "atlconv.h"使用USES_CONVERSION一定要小心,它们从堆栈上分配内存,直到调用它的函数返回,该内存不会被释放。如果在一个循环中,这个宏被反复调用几万次,将不可避免的产生sta
2013-10-04 16:43:29
414
转载 WaitForSingleObject()
WaitForSingleObject 用户模式的线程同步机制效率高,如果需要考虑线程同步问题,应该首先考虑用户模式的线程同步方法。但是,用户模式的线程同步有限制,对于多个进程之间的线程同步,用户模式的线程同步方法无能为力。这时,只能考虑使用内核模式。 Windows提供了许多内核对象来实现线程的同步。对于线程同步而言,这些内核对象有两个非常重要的状态:“已通知”状态,“未通知
2013-09-30 11:17:07
855
转载 bit位操作基础篇之位操作全面总结
Title: 位操作基础篇之位操作全面总结Author: MoreWindowsE-mail: morewindows@126.comKeyWord: C/C++ 位操作 位操作技巧 判断奇偶 交换两数 变换符号 求绝对值 位操作压缩空间 筛素数 位操作趣味应用 位操作笔试面试位操作篇共分为基础篇和提高篇,基础篇主要对位操作进行全面总结,帮助大
2013-09-18 16:13:37
8680
转载 PreSubclassWindow详细分析
PreSubclassWindowPreSubclassWindow是一个很好的定制控件的位置。如果我们通过重载CWnd::PreCreateWindow定制控件,而用户在对话框中使用控件。由于对话框中的控件窗口是通过CreateDlgIndirect创建,不经过CWnd::CreateEx函数,PreCreateWindow函数不会被调用。其实,用户要在对话框中使用定制控件,必须用DDX
2013-09-08 18:54:44
775
转载 Visual Assist X 最有用的快捷键
Visual Assist X 最有用的快捷键vax最有用的几个快捷键:1、Alt + G: 在定义与声明之间互跳。2、Alt + O: 在.h与.cpp之间互跳。(O是字母O,不是数字零)3、Alt + Shift + Q:鼠标定位到函数名上,若是在h文件中,按此快捷键会弹出右键菜单,里面有个选项--创建定义;若是在cpp文件中,则按此快捷键会弹出右键菜单,里面有一个选项--创建
2013-08-27 23:32:43
546
转载 linux下c编程中善用backtrace解决大问题
linux下c编程中善用backtrace解决大问题程序在得到一个Segmentation fault这样的错误信息毫无保留地就跳出来了,遇到这样的问题让人很痛苦,查找问题不亚你N多天辛苦劳累编写代码的难度。那么有没有更好的方法可以在产生SIGSEGV信号的时候得到调试可用的信息呢?看看下面的例程吧!/*sigsegv.h*/#ifndef __sigsegv_h__#define
2013-07-31 10:30:15
2343
原创 Linux Call Trace原理分析
Linux Call Trace原理分析 本文介绍了在Linux环境下根据EABI标准进行call trace调试的一般性原理。本文所说的call trace是指程序出问题时能把当前的函数调用栈打印出来。本文只介绍了得到函数调用栈的一般性原理,没有涉及Linux的core dump机制。下面简单介绍powerpc环境中如何实现call trace。内核态call trace
2013-07-30 22:21:48
6222
转载 移位操作符
移位操作符位移位运算符是将数据看成二进制数,对其进行向左或向右移动若干位的运算。位移位运算符分为左移和右移两种,均为双目运算符。第一运算对象是移位对象,第二个运算对象是所移的二进制位数。位移位运算符的运算对象、运算规则与结果、结合性如表2-16所示。移位时,移出的位数全部丢弃,移出的空位补入的数与左移还是右移花接木有关。如果是左移,则规定补入的数全部是0;如果是右移,还与被移位的数据是
2013-07-17 23:00:12
671
转载 FTP中PORT方式和PASV方式
FTP中PORT方式和PASV方式FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。FTP协议有两种工作方式:PORT方式和PASV方式,中文意思
2013-07-14 11:25:06
2386
转载 dynamic_cast<>用法
/*这是从网上摘下的例子,主要讲述了 dynamic_cast/*作用:将一个基类对象指针(或引用)cast到继承类指针,dynamic_cast会根据基类指针是否真正指向继承类指针来做相应处理, 即会作一定的判断。 对指针进行dynamic_cast,失败返回null,成功返回正常cast后的对象指针; 对引用进行dynamic_cast,
2013-07-11 10:35:58
669
转载 《职工带薪年休假条例》2008年元旦起施行(全文)
《职工带薪年休假条例》2008年元旦起施行(全文)中新网12月16日电 中国国务院12月7日举行的第198次常务会议已经通过 《职工带薪年休假条例》。该条例将从2008年1月1日起施行。以下是中国政府网今天公布的《职工带薪年休假条例》全文。职工带薪年休假条例第一条 为了维护职工休息休假权利,调动职工工作积极性,根据劳动法和公务员法,制定本条例。第二条 机关、团体、企业、事业单位
2013-07-10 15:57:53
962
转载 D_bus进程间通信
DBUS基础知识1. 进程间使用D-Bus通信 D-Bus是一种高级的进程间通信机制,它由freedesktop.org项目提供,使用GPL许可证发行。D-Bus最主要的用途是在Linux桌面环境为进程提供通信,同时能将Linux桌面环境和Linux内核事件作为消息传递到进程。D-Bus的主要概率为总线,注册后的进程可通过总线接收或传递消息,进程也可注册后等待内核事件响应,例如
2013-07-09 17:15:44
980
转载 select()函数分析(linux)
Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所谓非阻塞方式
2013-07-08 11:42:39
533
转载 waitpid()
waitpid系统调用在Linux函数库中的原型是:#include #include pid_t waitpid(pid_t pid,int *status,int options)从本质上讲,系统调用waitpid和wait的作用是完全相同的,但waitpid多出了两个可由用户控制的参数pid和options,从而为我们编程提供了另一种更灵活的方
2013-07-07 18:42:57
559
转载 linux中likely与unlikely
看内核时总遇到if(likely( )){}或是if(unlikely( ))这样的语句,最初不解其意,现在有所了解,所以也想介绍一下。likely() 与 unlikely()是内核(我看的是2.6.22.6版本,2.6的版本应该都有)中定义的两个宏。位于/include/linux/compiler.h中,具体定义如下:#define likely(x) __builtin_exp
2013-07-06 17:09:37
478
转载 优先级反转问题及解决方法
(1)什么是优先级反转简单从字面上来说,就是低优先级的任务先于高优先级的任务执行了,优先级搞反了。那在什么情况下会生这种情况呢?假设三个任务准备执行,A,B,C,优先级依次是A>B>C;首先:C处于运行状态,获得CPU正在执行,同时占有了某种资源;其次:A进入就绪状态,因为优先级比C高,所以获得CPU,A转为运行状态;C进入就绪状态;第三:执行过程中需要使用资源,而这个资源又被
2013-07-05 22:04:25
1529
转载 消息队列操作 (linux)
对消息队列的操作无非有下面三种类型:1、 打开或创建消息队列消息队列的内核持续性要求每个消息队列都在系统范围内对应唯一的键值,所以,要获得一个消息队列的描述字,只需提供该消息队列的键值即可;注:消息队列描述字是由在系统范围内唯一的键值生成的,而键值可以看作对应系统内的一条路经。2、 读写操作消息读写操作非常简单,对开发人员来说,每个消息都类似如下的数据结构:struct m
2013-07-04 19:09:04
658
转载 管道和命名管道(windows)
一、概述 管道(Pipe)实际是用于进程间通信的一段共享内存,创建管道的进程称为管道服务器,连接到一个管道的进程为管道客户机。一个进程在向管道写入数据后,另一进程就可以从管道的另一端将其读取出来。匿名管道(Anonymous Pipes)是在父进程和子进程间单向传输数据的一种没有名字的管道,只能在本地计算机中使用,而不可用于网络间的通信。二、匿名管道 匿名管道由CreatePipe
2013-07-04 19:00:48
920
转载 函数指针数组的定义
函数指针数组的定义方法,有两种:一种是标准的方法;一种是蒙骗法。第一种,标准方法:{分析:函数指针数组是一个其元素是函数指针的数组。那么也就是说,此数据结构是是一个数组,且其元素是一个指向函数入口地址的指针。根据分析:首先说明是一个数组:数组名[]其次,要说明其元素的数据类型指针:*数组名[].再 次,要明确这每一个数组元素是指向函数入口地址的指针:函数返回值类型(*数组名
2013-07-04 18:32:37
490
转载 const的作用
const是C语言的一种关键字,起受保护,防止以外的变动的作用!可以修饰变量,参数,返回值,甚至函数体。const可以提高程序的健壮性,你只管用到你想用的任何地方。(一)const修饰参数。const只能修饰输入参数。 1、如果输入参数是指针型的,用const修饰可以防止指针被意外修改。 2、如果参数采用值传递的方式,无需const,因为函数自动产生临时变量复制该参数。
2013-07-04 17:45:28
481
原创 static在C中作用
(1)隐藏。对于函数来讲,static的作用仅限于隐藏;而对于变量,static还有下面两个作用。(2)static的第二个作用是保持变量内容的持久。(3)static的第三个作用是默认初始化为0。
2013-07-04 17:37:24
510
原创 IPC
IPC(Inter-Process Communication)进程间通信,提供了各种进程间通信的方法。在Linux C编程中有几种方法(1) 半双工Unix管道(2) FIFOs(命名管道)(3) 消息队列(4) 信号量(5) 共享内存(6) 网络Socket
2013-07-04 17:23:22
1033
原创 指针与数组
指针数组int *p[3];int a[3][4];for(i=0;i这里int *p[3] 表示一个一维数组内存放着三个指针变量,分别是p[0]、p[1]、p[2]。数组指针:int a[3][4];int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组。 p=a; //将该二维数组的首地址赋给p,也就是a[0]或&a[
2013-07-04 17:12:28
540
转载 GPS测试程序举例
#include #include #include #include #include #include #include int fd;typedef struct GPSINFO{ char utc_time[64]; char status; float latitude_value; char
2013-06-29 18:00:53
971
原创 类对象占用空间计算
#include "stdafx.h"class A { int Fun();//一般函数不占对象空间 virtual int Fun2(){printf("class A\n");return 0;}//虚函数占用对象一个指针空间 int c; static int a;//静态成员变量属于类,不占用对象空间。 int b;};str
2013-06-26 16:02:44
704
转载 CString实现原理
MFC中CString类的实现在strcore.cpp中,Cstring封装了一个用来存放字符串的缓冲区和对施加于这个字符串的操作。也就是说 ,CString里需要有一个用来存放字符串的缓冲区,并且有一个指针指向该缓冲区,该指针就是LPTSTR m_pchData。但是有些字符串操作会增建或减少字符串的长度,因此为了减少频繁的申请内存或者释放内存,Cstring会先申请一个大的内存块用来存放字符串
2013-06-22 16:53:29
476
原创 36进制数与10进制数互转
10进制整数转化成36进制字符串:#include "stdafx.h"#includeint main(){ int num, base, i; int a[32]; scanf("%d %d", &num, &base); if(num == 0){printf("0\n"); return 0;} for(i = 0; n
2013-06-21 21:23:16
1062
转载 虚指针
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我在这里不做过多的
2013-06-19 22:21:38
642
转载 using namespace std 说明
对于一个存在着标准输入输出的C++控制台程序,一般会在#include 的下一行发现一句话,using namespace std。这句话其实就表示了所有的标准库函数都在标准命名空间std中进行了定义。其作用就在于避免发生重命名的问题。 1. 关于namespace C++引入了命名空间namespace主要解决了多个程序员在编写同一个项目中可能出现的函数等重名的现象。解决方法就是加上
2013-06-18 21:50:09
597
转载 (转)链表反向链表的相关操作
假设链表节点的数据结构为:struct node{ int data; struct node* next;};创建单链表的程序为:struct node* create(unsigned int n){ //创建长度为n的单链表 assert(n > 0); node* head; head = new no
2013-06-18 21:36:16
672
VA_X_Setup2375_0
2020-06-23
WinStun nat类型检测
2016-05-31
Visual.Assist.X.V10.9.2302.0原版安装文件以及破解补丁Patch
2019-01-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅