编译器VC
文章平均质量分 79
ShenRui
不要只会编码,交流比编码更重要
展开
-
dump call stack 的实现
闲来无事作点翻译工作,今天要介绍的是关于错误处理的.以下内容大部分不是我的原创,我只是把他们收集到一起来了而已. 错误处理在一个系统里面算是一个比较底层的东西了.拥有一个稳定的错误处理系统,是一个良好的系统的基础.从发展的角度看,错误处理大体有下面几种方式. 比较基础的,使用返回值表示错误还是正确,比如使用int作为返回值,0表示正常1表示错误,这种算是c语言里面的办法了,比如windo转载 2008-05-29 14:36:00 · 4925 阅读 · 2 评论 -
error LNK2019(无法解析的外部符号)
无法解析的外部符号“symbol”是指该符号在函数“function”中被引用,在function中找到了未定义的外部符号 (symbol)。若要解决此错误,请提供符号定义或移除引用它的代码。 1.在 Visual C++ .NET 2003 中,如果使用了 /clr 而未将 CRT 链接到可执行文件,将生成此错误。任何由编译器在未使用 /clr:initialAppDomain 时转载 2009-05-10 12:28:00 · 4813 阅读 · 0 评论 -
函数调用方式的区别[thiscall,__cdecl,__stdcall]
前几天在CSDN看到yc_8301写的一篇介绍VC中的几种函数调用方法区别的文章,一下子释放了我的好奇心。先前也听说过诸如__cdecl和__stdcall的区别,但也只是泛泛地介绍一下前一种调用(__cdecl)由主调函数负责参数压栈,同时主调函数负责栈(Stack)的恢复。后一种调用(__stdcall)由主调函数负责参数压栈,由函数本身负责栈的恢复。但终究觉得不过隐,觉得__cdecl转载 2009-05-10 13:49:00 · 536 阅读 · 0 评论 -
error lnk2001
学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于 编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时, 编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不 明其所以然。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非 常困难。 初学者在学习VC++的过程中,遇到的LNK2转载 2009-05-10 12:35:00 · 642 阅读 · 0 评论 -
深入了解VC++编译器(转贴)
大家可能一直在用VC开发软件,但是对于这个编译器却未必很了解。原因是多方面的。大多数情况下,我们只停留在“使用”它,而不会想去“了解”它。因为它只是一个工具,我们宁可把更多的精力放在C++语言和软件设计上。我们习惯于这样一种“模式”:建立一个项目,然后写代码,然后编译,反反复复调试。但是,所谓:“公欲善其事,必先利其器”。如果我们精于VC开发环境,我们是不是能够做得更加游刃有余呢? 闲话转载 2009-02-12 18:39:00 · 779 阅读 · 0 评论 -
dumpbin.exe调试命令
在使用VC时,可以用DUMPBIN。EXE来得到某个DLL中所输出的符号的清单。如下面的 命令:dumpbin -exports Cmpnt1.dll如:C:/WINDOWS/system32>dumpbin -exports msgsvc.dllMicrosoft (R) COFF Binary File Dumper Version 6.00.8447Copyright (C) Micro转载 2008-11-28 16:12:00 · 734 阅读 · 0 评论 -
char*和CString转换
CString 是一种很特殊的 C++ 对象,它里面包含了三个值:一个指向某个数据缓冲区的指针、一个是该缓冲中有效的字符记数(它是不可存取的,是位于 CString 地址之下的一个隐藏区域)以及一个缓冲区长度。 有效字符数的大小可以是从0到该缓冲最大长度值减1之间的任何数(因为字符串结尾有一个NULL字符)。字符记数和缓冲区长度被巧妙隐藏。(1) char*转换成CString 若将char*转载 2009-01-06 14:49:00 · 1679 阅读 · 0 评论 -
CString/string/char *比较详解
(一) 概述string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中;CString(typedef CStringT> CString)为Visual C++中最常用的字符串类,继承自CSimpleStringT类,主要应用在MFC和ATL编程中,主要数据类型有char(应用于ANSI),wchar_t(unicode),TCHAR转载 2009-01-06 14:47:00 · 618 阅读 · 0 评论 -
CString 操作指南
[ 翻译文档 本文适合中级读者 已阅读70839次 ] 文档 代码 工具 CString 操作指南原著:Joseph M. Newcomer翻译:littleloach原文出处:codeproject:CString Management通过阅读本文你可以学习如何有效地使用 CString转载 2009-01-06 14:30:00 · 566 阅读 · 0 评论 -
关于CString总结
前言:串操作是编程中最常用也最基本的操作之一。 做为VC程序员,无论是菜鸟或高手都曾用过Cstring。而且好像实际编程中很难离得开它(虽然它不是标准C++中的库)。因为MFC中提供的这个类对我们操作字串实在太方便了,CString不仅提供各种丰富的操作函数、操作符重载,使我们使用起串起来更象basic中那样直观;而且它还提供了动态内存分配,使我们减少了多少字符串数组越界的隐患。但是,我们在使用转载 2009-01-06 14:32:00 · 856 阅读 · 0 评论 -
LNK2005错误——重复定义错误
方案一、编程中经常能遇到LNK2005错误——重复定义错误,其实LNK2005错误并不是一个很难解决的错误。弄清楚它形成的原因,就可以轻松解决它了。 造成LNK2005错误主要有以下几种情况: 1.重复定义全局变量。可能存在两种情况: A、对于一些初学编程的程序员,有时候会以为需要使 用全局变量的地方就可以使用定义申明一下。其实这是错误的,全局变量是针对整个工程的。正转载 2008-09-29 18:24:00 · 1194 阅读 · 0 评论 -
error LNK2005:XXXX already defined in XXX.lib
Linking...base64.obj : warning LNK4075: ignoring /EDITANDCONTINUE due to /INCREMENTAL:NO specificationSearching librariesSearching D:/Program Files/Microsoft Visual Studio 8/VC/lib/msvcrtd.lib:Se转载 2008-09-20 20:40:00 · 17716 阅读 · 0 评论 -
fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds
MFCをスタティックリンクしたときに出るエラー MFCを使う場合、MFCをDLLとして使う方法と、MFCをスタティックリンクさせて1つの実行ファイルにする方法があります。これはプロジェクト設定の「全般」の設定で設定できます。 ところが最初にDLLを使うようにプロジェクトを作成して、後からスタティックリンクするように変更すると、ビルドエラーが出るときがあります。エラーメッセージは次转载 2008-09-20 21:07:00 · 10786 阅读 · 2 评论 -
VS2003=>VS2005在VC上的一些变化
最近, 找到一个界面库. 想把它转化为VS2005下编译, 岂知出现了NNNNNNNNN个错误!!!这才恍然大悟: VS2003到VS2005在VC上还是改动了不少!!!下面是对这些变化的总结: 1. 变量作用域 在vc7.1中, 如果一个变量定义在for语句的条件从句中,那么这个变量可以在for之后使用。但Vc8禁止这样,会报告一个C2065错误. for (int i = 0; i 10转载 2008-06-11 15:37:00 · 2135 阅读 · 1 评论 -
使用Rational PureCoverage测试代码覆盖率
软件测试是软件构建过程中非常重要的一环,测试可以完成许多事,但最重要的是可以衡量正在开发的软件的质量。有一种观点认为,在开发周期中,越早使测试成为投入的一部分越好。一个软件从代码编写开始就要面临这各种各样的测试,单元测试、集成测试、回归测试等等,其中与软件开发人员关系最紧密的就是单元测试。 单元测试的主要目的是获取应用程序中可测试软件的最小片段,将其同代码的其余部分隔离开来,然转载 2009-12-21 13:50:00 · 683 阅读 · 0 评论