c/c++
文章平均质量分 68
lhuoshan
这个作者很懒,什么都没留下…
展开
-
C++ Virtual详解
Virtual是C++ OO机制中很重要的一个关键字。只要是学过C++的人都知道在类Base中加了Virtual关键字的函数就是虚拟函数(例如函数print),于是在Base的派生类Derived中就可以通过重写虚拟函数来实现对基类虚拟函数的覆盖。当基类Base的指针point指向派生类Derived的对象时,对point的print函数的调用实际上是调用了Derived的print函数而不是Ba原创 2010-04-06 09:16:00 · 492 阅读 · 0 评论 -
error LNK2001: 无法解析的外部符号
<br />VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,<br />编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非常困难。 <br /> 初学者在学习VC++的过程中,遇到的LNK2001错误的错误消息主要为: <br /> unresolved external symbol “sy原创 2010-06-25 16:50:00 · 1011 阅读 · 0 评论 -
CString、TCHAR*、char*转换
<br />char*、TCHAR*转换CString <br />CString str(****) <br />下面详细写一下其它转换 <br />////////////////////////////// <br />/* <br />*********************************************************************** <br />* 函数: TransCStringToTCHAR <br />* 描述:将CString 转换为 TCHAR*原创 2010-06-22 17:43:00 · 486 阅读 · 0 评论 -
TCHAR 与 STD::string 之间的若干问题
<br />TCHAR 与 STD::string 之间的若干问题 [转]<br />我经常在 C++ 程序中使用标准模板库(STL)的 std::string 类,但在 使用 Unicode 时碰到了问题。在使用常规 C 风格的字符串时,我可以使用 TCHAR 和 _T 宏,这样针对 Unicode 或 ASCII 均可以进行编译,但我 总是发现这种ASCII/Unicode的结合很难与 STL 的 string 类一起使用。你有什么好的建议吗?<br />Naren J.<br />是的,一旦知道 TC原创 2010-06-22 17:42:00 · 744 阅读 · 0 评论 -
UNICODE与ANSI的区别
<br />UNICODE与ANSI的区别<br /><br />什么是ANSI,什么又是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用8bit,而UNICODE中的字符采用16bit。(对于字符来说ANSI以单字节存放英文字符,以双字节存放中文等字符,而Unicode下,英文和中文的字符都以双字节存放)Unicode码也是一种国际标准编码,采用二个字节编码,与ANSI码不兼容。目前,在网络、Windows系统和很多大型软件中得到应用。8bit的ANSI编码只能表示256种字符,表示原创 2010-06-22 17:37:00 · 351 阅读 · 0 评论 -
String,CString,TCHAR,char之间区别和联系
char是类型<br />TCHAR也是!不过他可以通过是否定义了UNICODE宏来判断到底是<br />char还是w_char;<br />TCHAR是一种字符串类型,它让你在以MBCS和UNNICODE来build程序时可以使用同样的代码,不需要使用繁琐的宏定义来包含你的代码,而char代表ASCII的字符#ifdef UNICODE typedef wchar_t TCHAR; #else typedef char TCHAR; #endif<br />所以用MBCS原创 2010-06-22 17:39:00 · 456 阅读 · 0 评论 -
UNICODE与ANSI的区别
<br />UNICODE与ANSI的区别<br /><br />什么是ANSI,什么又是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用8bit,而UNICODE中的字符采用16bit。(对于字符来说ANSI以单字节存放英文字符,以双字节存放中文等字符,而Unicode下,英文和中文的字符都以双字节存放)Unicode码也是一种国际标准编码,采用二个字节编码,与ANSI码不兼容。目前,在网络、Windows系统和很多大型软件中得到应用。8bit的ANSI编码只能表示256种字符,表示原创 2010-06-22 17:37:00 · 422 阅读 · 0 评论 -
学习STL map, STL set之数据结构基础
<br /><br />摘要:本文列出几个基本的STL map和STL set的问题,通过解答这些问题讲解了STL关联容器内部的数据结构,最后提出了关于UNIX/LINUX自带平衡二叉树库函数和map, set选择问题,并分析了map, set的优势之处。对于希望深入学习STL和希望了解STL map等关联容器底层数据结构的朋友来说,有一定的参考价值。<br />STL map和set的使用虽不复杂,但也有一些不易理解的地方,如:<br />为何map和set的插入删除效率比用其他序列容器高?为何每次ins原创 2010-08-04 16:00:00 · 503 阅读 · 0 评论 -
C++ 语言特性的性能分析 第 2 章:C++ 语言特性的性能分析
大多数开发人员通常都有这个观点,即汇编语言和 C 语言适合用来编写对性能要求非常高的程序。而 C++ 语言的主要应用范围是编写复杂度非常高的程序,但是对性能要求不是那么严格的程序。但是事实往往并非如此,很多时候,一个程序的速度在框架设计完成时大致已经确定了,而并非是因为采用了C++语言才使其速度没有达到预期的目标。因此当一个程序的性能需要提高时,首先需要做的是用性能检测工具对其运行的时间分布转载 2010-05-11 11:33:00 · 493 阅读 · 0 评论 -
C 编程最佳实践
简介本文是为了满足开发人员的需要而写的。我们总结了一套指南,无论作为开发人员还是顾问,这些指南多年来一直都很好地指导着我们,我们把它们作为建议提供给您,希望对您的工作有所帮助。您也许不赞同其中的某些指南,但我们希望您会喜欢其中的一些并在您的编程或移植项目中使用它们。风格与指南使用一种使代码具有可读性和一致性的源代码风格。如果没有团队代码风原创 2010-05-06 11:00:00 · 406 阅读 · 0 评论 -
warning C4996: “strcpy”被声明为否决的解决办法
<br /> VC2005中,使用了很多标准的C函数,比如fopen,strcpy之类的。编译时会出现警告,比如这个:<br /> d:/xxxx.c(1893) : warning C4996: “strcpy”被声明为否决的<br /><br /> 紧接着IDE有提示说:“This function or variable may be unsafe. Consider using strcpy_s instead... 可是我的代码只是借VS2005的IDE环境开发而已,以后原创 2010-06-25 11:05:00 · 2280 阅读 · 1 评论 -
Windows的系统中DLL文件详解
<br />Windows世界中,有无数块活动的大陆,它们都有一个共同的名字——动态链接库。现在就走进这些神奇的活动大陆,找出它们隐藏已久的秘密吧!<br /><br /> 初窥门径:Windows的基石<br /><br /> 随便打开一个系统目录,一眼望去就能看到很多扩展名DLL的文件,这些就是经常说的“动态链接库”,DLL是Dynamic Link Library(即“动态链接库”)的缩写。从Microsoft公司推出首个版本的Windows以来,动态链接库就一直是这个操作系统的基础。<b转载 2010-11-20 20:50:00 · 985 阅读 · 0 评论