C++
文章平均质量分 87
taotao1990228
这个作者很懒,什么都没留下…
展开
-
<细节>c++中关于++和*的优先级
#include using namespace std;int main(){ int a,b,c,d; a = 10; b = 10*++a; //先++a,再* c = 10*a++; //a=11,应该为110 cout<<"b:"<<b<<endl; cout<<"c:"<<c<<endl; return 0;}原创 2014-05-28 14:59:30 · 1633 阅读 · 0 评论 -
<细节>写个简单的函数,用于判断CPU的字节序(little endian/big endian)
这个题目是PPS2013校园招聘的一个笔试题目,原创 2014-08-14 17:13:42 · 2073 阅读 · 0 评论 -
CPU的字节序——大端小端模式详解
1. 什么是大端,什么是小端:所谓的大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;所谓的小端模式,是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。2.为什么会有大小端:为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了8bit的cha转载 2014-08-14 17:03:35 · 2533 阅读 · 2 评论 -
<实例>C++ 将一句话里的单词进行倒置,标点符号不倒换——使用string库实现
#include #include using namespace std;string reverse(string sentence){ string::iterator begin = sentence.begin(); string::iterator end = sentence.end(); char tmp; while( begin < end ) { tm原创 2014-06-17 11:10:29 · 1097 阅读 · 1 评论 -
<细节>C++的常用IO格式功能
头文件iostream中定义的常用操作符头文件ioman原创 2014-06-15 21:03:24 · 769 阅读 · 0 评论 -
<细节>为什么构造函数不能是虚函数,为什么有虚析构函数
1.构造函数为什么不能为虚函数原创 2014-07-02 15:58:23 · 712 阅读 · 1 评论 -
堆和栈的区别
堆和栈的区别 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵转载 2014-07-01 20:46:50 · 446 阅读 · 0 评论 -
虚函数和纯虚函数
1、基本形式:virtual ReturnType Function_1(); //虚函数声明virtual ReturnType Function_2() = 0; //纯虚函数声明先讲示例吧,再总结结论。2、示例:class Animail{public: void Function_1() {cout };class转载 2014-07-02 15:43:36 · 489 阅读 · 0 评论 -
<细节>C++标准库string类型
string库基本概念原创 2014-06-10 21:16:55 · 672 阅读 · 0 评论 -
关于虚函数
虚函数的作用是实现动态联编,也就是在程序的运行阶段动态地选择合适的成员函数,在定义了虚函数后,可以在基类的派生类中对虚函数重新定义,在派生类中重新定义的函数应与虚函数具有相同的形参个数和形参类型。以实现统一的接口,不同定义过程。如果在派生类中没有对虚函数重新定义,则它继承其基类的虚函数。原创 2014-07-02 19:20:46 · 851 阅读 · 0 评论 -
类的sizeof
文字是转载的,图是原创的。1、空类的sizeof是1。空类是指没有成员的类,类中的函数不占空间,除非是虚函数。[cpp] view plaincopyclass A { public: A(){} ~A(){} void fun(){} };转载 2014-05-27 21:02:27 · 444 阅读 · 0 评论 -
<细节>C++函数形参表调用顺序
#include using namespace std;void print(int i, int j){ cout<<i<<endl; cout<<j<<endl;}void main(){ int i=0; print(i,i++);}观察上述代码,常规原创 2014-05-27 20:25:09 · 892 阅读 · 0 评论 -
<实例>C++ 将一句话里的单词进行倒置,标点符号不倒换。
将“I come from tian jin.”倒转变成“t”原创 2014-05-28 16:44:37 · 3744 阅读 · 0 评论 -
<实例>C++中交换两数值的几种方法
交换两数值,最常用的就是使用指针,下面有三种指针的方法原创 2014-05-29 11:05:46 · 11370 阅读 · 0 评论 -
<细节>动态创建二维数组
今天在做一个关于数组相似度的题目,需要动态创建二维数组,刚开始想用常规的int a[ ][ ]建立,但很快就发现行不通,这种常规数组必须在编译前指定数组的维数,而这个题目在的维数必须在运行中计算得出,于是想到采用new来建立动态二维数组,这个方法行得通,但是很麻烦,也不太利于理解,后面决定采用vector >方法来创建,简单了不少,下面对两种方法都进行一下总结。原创 2014-06-23 16:46:32 · 623 阅读 · 0 评论 -
<实例>消除内嵌括号——使用栈实现
题目:给定一个如下格式的字符串(1,(2,3),(4,(5,6),7))括号内的元素可以是数字,也可以是另一个括号,请实现一个算法消除嵌套的括号,比如把上面的表达式变成:(1,2,3,4,5,6,7),如果表达式有误请报错。原创 2014-06-24 10:05:58 · 641 阅读 · 0 评论 -
C++派生继承访问权限
当一个子类从父类继承时,父类的所有成员成为子类的成员,此时对父类成员的访问状态由继承时使用的继承限定符决定。1.如果子类从父类继承时使用的继承限定符是public,那么(1)父类的public成员成为子类的public成员,允许类以外的代码访问这些成员;(2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;(3)父类的protected成员成为子原创 2014-08-15 20:41:22 · 634 阅读 · 0 评论