c/c++
shkkhd
这个作者很懒,什么都没留下…
展开
-
cin,cin.get()和cin.getline()的区别
cincin.get()的结束符只有enter,但会把enter放入队列等待,遇到结束标志字符后,最后指针指向结束标志字符.cin.getline()的结束符也只有enter,但不会把enter放入队列,指向结束标志符后一个字符; 比如:#includeusing namespace std;int main(){ char ch[20]; cin>>ch; cout转载 2007-06-20 21:23:00 · 4320 阅读 · 2 评论 -
成员函数的重载、覆盖与隐藏
成员函数被重载的特征: (1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual关键字可有可无。覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);(2)函数名字相同;(3)参数相同;(4)基类函数必须有virtual关键字。本来仅仅区别重载与覆盖并不算困难,但是C++的隐藏规则使问题复杂性陡转载 2007-06-17 10:19:00 · 952 阅读 · 0 评论 -
c++四种不同的对象生存方式
在C++ 中,有四种方法可以产生一个对象。第一种方法是在堆栈(stack)之中产生它:void MyFunc(){CFoo foo; // 在堆栈(stack)中产生foo 对象...}第二种方法是在堆积(heap)之中产生它:void MyFunc(){...CFoo* pFoo = new CFoo(); // 在堆(heap)中产生对象}第三种方法是产生一个全域对象(同时也必然是个静态对象)转载 2007-09-25 10:40:00 · 6688 阅读 · 0 评论 -
指针与引用的区别
《高质量c++编程指南》中提到的 指针与引用的区别:(1)引用被创建的同时必须被初始化(指针则可以在任何时候被初始化)。(2)不能有NULL引用,引用必须与合法的存储单元关联(指针则可以是NULL)。(3)一旦引用被初始化,就不能改变引用的关系(指针则可以随时改变所指的对象)。引用的主要功能是传递函数的参数和返回值。原创 2007-10-23 16:25:00 · 750 阅读 · 0 评论 -
理解临时对象的来源
当程序员之间进行交谈时,他们经常把仅仅需要一小段时间的变量称为临时变量。例如在下面这段swap(交换)例程里: templatevoid swap(T& object1, T& object2){ T temp = object1; object1 = object2; object2 = temp;} 通常把temp叫做临时变量。不过就C++而言,t转载 2007-10-22 19:23:00 · 735 阅读 · 0 评论 -
VC中MFC下的绘图初步解析
作者:zieckey([email protected])All Rights Reserved!首先我们说下通过鼠标的移动来绘制直线。这里要捕获到鼠标的两个消息:WM_LBUTTONDOWN, WM_LBUTTONUP 响应WM_LBUTTONDOWN消息记录直线的起始点,响应WM_LBUTTONUP消息记录直线的终点并绘制直线。好了,我们看看怎么响应。void CDrawView::转载 2007-10-04 10:49:00 · 788 阅读 · 0 评论 -
atoi和itoa函数
以下是我自己写的atoi()和itoa() int atoi(const char *string){ int i = 0; int value = 0; while(string[i]!=/0) { value = value*10 + string[i] -0; i++; } return v原创 2007-11-06 19:46:00 · 1283 阅读 · 1 评论