![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++基础
dxy408460910
这个作者很懒,什么都没留下…
展开
-
C++ 子类函数对父类同名函数的覆盖
class B{public: void f(int) const { cout } void f(double) const { cout }}; class D: public B{public: void f(void*) const {原创 2013-07-23 09:58:44 · 5121 阅读 · 0 评论 -
String,CString,TCHAR*,char*之间区别和联系
最近老用到Cstring, TCHAR*, char*的转换. 找到一篇写得蛮详细的. 引用过来, 方便自己以后查阅. char是类型TCHAR也是!不过他可以通过是否定义了UNICODE宏来判断到底是char还是w_char; TCHAR是一种字符串类型,它让你在以MBCS和UNNICODE来build程序时可以使用同样的代码,不需要使用繁琐的宏定义来包含你的代码,而char代转载 2014-05-09 15:36:24 · 861 阅读 · 0 评论 -
C++ 在类中定义枚举类型的问题
最近在遇到了定义枚举类型的问题,编译的时候可以通过,但是结果不是想要的结果,代码如下所示;class A{public: A(); ~A();public: static enum em { TYPE1, TYPE2 } m_emType;public: void SetType(enum emType) { m_emType = emType; };原创 2014-03-06 10:04:13 · 5580 阅读 · 1 评论 -
float与double的范围和精度
1. 范围 float和double的范围是由指数的位数来决定的。 float的指数位有8位,而double的指数位有11位,分布如下: float: 1bit(符号位) 8bits(指数位) 23bits(尾数位) double: 1bit(符号位) 11bits(指数位) 52bits(尾数位) 于是,float的指数范围为-127~+128,而dou转载 2013-10-31 16:10:40 · 494 阅读 · 0 评论 -
VARIANT类型 做参数实现函数的可变参数类型
STDMETHODIMP CDispSimple::Add(VARIANT v1, VARIANT v2, VARIANT *pVal){::VariantInit( pVal ); // 永远初始化返回值是个好习惯CComVariant v_1( v1 );CComVariant v_2( v2 );if((v1.vt & VT_I4) && (v2.vt & VT_I4)原创 2013-10-30 21:04:55 · 1690 阅读 · 0 评论 -
char* CString string区别
一.介绍string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中;CString(typedef CStringT> CString)为Visual C++中最常用的字符串类,继承自CSimpleStringT类,主要应用在MFC和ATL编程中,主要数据类型有char(应用于ANSI),wchar_t(Unicode),TCHA转载 2013-10-28 09:50:23 · 495 阅读 · 0 评论 -
C++内存管理
[导语]内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关是必须要过的,除非放弃C++,转到Java或者.NET,他们的内存管理基本是自动的,当然你也放弃了自由和对内存的支配权转载 2013-10-25 21:46:00 · 758 阅读 · 0 评论 -
ASCII中LF与CR区别?
在文本处理中, CR, LF, CR/LF是不同操作系统上使用的换行符.Dos和windows采用回车+换行CR/LF表示下一行, 而UNIX/Linux采用换行符LF表示下一行,苹果机(MAC OS系统)则采用回车符CR表示下一行.CR用符号'\r'表示, 十进制ASCII代码是13, 十六进制代码为0x0D; LF使用'\n'符号表示, ASCII代码是10, 十六制为0x原创 2013-09-25 16:44:55 · 1445 阅读 · 0 评论 -
C++类成员函数的重载、覆盖与隐藏
1. 重载、覆盖与隐藏 1).重载:成员函数具有以下的特征时发生"重载" A.相同的范围(同一个类中) B.函数的名字相同 C.参数类型不同(不能进行隐式类型转换) D.Virtual关键字可有可无 2).覆盖(也叫"继承"):指派生类函数覆盖基类函数,特征是: A.不同的范围(分别位于基类与派生类中) B.函数名字相同 C.参数相同 D.基类函数必须有vi原创 2013-07-23 10:07:04 · 417 阅读 · 0 评论 -
模版函数指针,C++委托的实现
今天写引擎的时候,很想加入一些回调函数,以前一直没时间整理这块,这次一定要下决心好好整整代码,纯粹用多态,很多类非要加个帽子,类之间的关系也显的很单一,有的情况需要用到委托的回调机制,这是个很好的东西,在C#里面是原生支持的,C++里面本来函数指针是个不错的选择,可到了对象里面,成员函数指针还有那么好用吗?这原本是另C++程序员非常失望和无赖的,难道一说到成员函数指针就真的那么不好用,甚至要沦为被原创 2014-05-14 07:29:36 · 480 阅读 · 0 评论