文章分类 -  C/C++学习

摘要:http://www.cnblogs.com/ider/archive/2011/07/31/cpp_cast_operator_part4.html 阅读全文
posted @ 2014-03-06 16:22 xiaobiexi 阅读(67) 评论(0) 推荐(0)
摘要:学计算机N年了,一年懒得去了解小数的存放,趁今天想知道double数据存放格式,了解了一下,真是懒不得,无论什么样的基础知道,早晚一天还是要学到心中的。一、浮点型数据在内存中存储的表示实数在内存中以规范化的浮点数存放,包括数符、阶码、尾数。数的精度取决于尾数的尾数。比如32位机上float型为23位(因为规范化数的数码最高位恒为1,不必存储,实际精度为24位,下面会有详解),double型为52位。单精度float型存储在内存中的大小为4个字节,即32位。xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx浮点表示法类似于科学计数法,任一数均可通过改变指数部分,使小数点位置发 阅读全文
posted @ 2013-08-28 16:19 xiaobiexi 阅读(1037) 评论(0) 推荐(0)
摘要:位段(bit-field)是以位为单位来定义结构体(或联合体)中的成员变量所占的空间。含有位段的结构体(联合体)称为位段结构。采用位段结构既能够节省空间,又方便于操作。 位段的定义格式为: type [var]:digits 其中type只能为int,unsigned int,signed int三种类型(int型能不能表示负数视编译器而定,比如VC中int就默认是signed int,能够表示负数)。位段名称var是可选参数,即可以省略。digits表示该位段所占的二进制位数。 那么定义一个位段结构可以像下面这段代码去定义:struct node{ unsigned int a:4; //. 阅读全文
posted @ 2013-08-28 16:11 xiaobiexi 阅读(123) 评论(0) 推荐(0)
摘要:Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL + SHIFT + O打开项目 CTRL + SHIFT + C显示类视图窗口 F4 显示属性窗口 SHIFT + F4显示项目属性窗口 CTRL + SHIFT + E显示资源视图 F12 转到定义 CTRL + F12转到声明 CTRL + ALT + J对象浏览 CTRL + ALT + F1帮助目录 CTRL + F1 动态帮助 F1 帮助 SHIFT + F1当前窗口帮助 CTRL + 阅读全文
posted @ 2013-07-25 16:06 xiaobiexi 阅读(90) 评论(0) 推荐(0)
摘要:http://blog.sina.com.cn/s/blog_6215fe350100fg9i.html虚函数在c++中的实现机制就是用虚表和虚指针,但是具体是怎样的呢?从more effecive c++其中一篇文章里面可以知道:是每个类用了一个虚表,每个类的对象用了一个虚指针。具体的用法如下:class A { public: virtual void f(); virtual void g(); private: int a };class B : public A { public: void g(); private: int b; };//A,B的实现省略... 阅读全文
posted @ 2013-07-11 20:07 xiaobiexi 阅读(120) 评论(0) 推荐(0)
摘要:今天去参加百度的面试,遇到一个关于虚函数的机制的问题,我一直认为就是为了让基类指针或引用(指向继承类)能够看到基类的虚函数(当基类的虚函数没有被继承类重写),但是继承类又怎么看到基类的普通成员函数呢?我开始想,好想不可以调用基类的成员函数,因为基类的成员函数不是虚函数,在虚表找不到它,好吧,明天被鄙视了。回到家好好的研究了一下虚函数和成员函数,看看基类的成员函数和虚函数在派生类指针或引用是否可见,还有基类的成员函数和虚函数在基类指针或引用(指向继承类)是否可见,以及派生类的成员函数和虚函数在基类指针或引用(指向继承类)是否可见?下面是例子:#include using namespace st 阅读全文
posted @ 2013-07-11 19:53 xiaobiexi 阅读(551) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/chujiangkedejiushu/article/details/8537177我将从remove的复习开始这个条款,因为remove是STL中最糊涂的算法。误解remove很容易,驱散所有关于remove行为的疑虑——为什么它这么做,它是怎么做的——是很重要的。这是remove的声明:templateForwardIterator remove(ForwardIterator first, ForwardIterator last, const T& value);就像所有算法,remove接收指定它操作的元素区间的一对迭代器。它不接收一 阅读全文
posted @ 2013-07-11 10:43 xiaobiexi 阅读(166) 评论(0) 推荐(0)
摘要:转载http://xingyunbaijunwei.blog.163.com/blog/static/76538067201221010412519/ 我们知道,如果函数名相同,在相同的作用域内,其参数类型、参数个数,参数顺序不同等能构成函数重载。有趣的是如果同时在类中,对于函数名相同的const函数和非const函数能够构成重载,同时它们被调用的时机为:如果定义的对象是常对象,则调用的是const成员函数,如果定义的对象是非常对象,则调用重载的非const成员函数。例如:#include using namespace std;class A {public: A( int x ){ ... 阅读全文
posted @ 2013-07-11 10:34 xiaobiexi 阅读(117) 评论(0) 推荐(0)