
C++
shiwenbin333
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ 仿函数
感觉彻底的郁闷了 整了好多的语法 竟然还有的语法没有听到过 真是见识了 看观察者模式的例子时候出现了个仿函数 真是郁闷 没办法 下面是找的内容 我晕了 不过还好理解了点点 仿函数就是在类里面重载函数 重载函数的哪个地方我们就可以有参数 这样的时候我们调用的时候就直接用类名加上哪个函数后面的参数就可以了 这样的话就和直接调用函数是一个写法 这就是叫仿函数的由来 也不知道是谁这样弄的 麻烦人 还偏原创 2009-08-19 11:23:00 · 1884 阅读 · 2 评论 -
c++ 中extern的基本解释说明(VC代码)
extern a; 它的作用就是告诉编译器这个变量是在其他文件中定义的(是外援),要是在本文件中看到它的名字千万别奇怪。 编译器是相信同伙的,所以在编译的时候要是看到a变量时会认为它是存在,不会报错。只有在链接的时候链接器才会去其它obj文件中寻找a变量的定义(地址),找到则顺利链接,否则报错。因为编译器只需要知道extern所声明变量的名字就可以了,所以extern原创 2010-01-06 12:51:00 · 2830 阅读 · 1 评论 -
C++ 值传递 址传递 引用传递
一直分不清楚他们是干什么的,这回好好的总结下:1:按值传递: 程序如下:#include using namespace std;void swap(int a,int b)//指针保存地址{int c;cout<<"前: a:"<<a<<" b:"<<b<<endl;c=a;a=b;b=c;cout<<"后: a:"<<a<<" b:"原创 2009-09-10 17:16:00 · 3955 阅读 · 2 评论 -
C++ 堆的理解
堆的理解: 堆是一大堆不连续的内存区域,在系统中由列表将他们串接起来,为了数据隐蔽,堆中的每个单元内存都是匿名的,因此你必须先在堆中申请一个内存单元地址,然后把他保存在一个指针中,这样你只有使用指针才可以访问到该内存单元的内容.堆的好处: 1:可以存储比较大的数据 2:程序员自己控制创建和释放 3:只有特定的指针才能访问特定的数据,这样原创 2009-09-04 11:50:00 · 880 阅读 · 0 评论 -
C++ 快速排序
快速排序(Quicksort)是对冒泡排序的一种改进。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 算法过程:设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用第一个数据)作为关键数据,然转载 2009-09-07 17:46:00 · 13524 阅读 · 4 评论 -
C++的冒泡排序
C++的冒泡排序是经典的算法之一 核心思想就是一遍遍的把最大的那个数放到最下面 然后在循环放 像冒泡泡一样的比较 下面的例子使用了个函数指针来定义函数,这样可以先定义函数的风格,然后再定义函数:代码如下:#includeusing namespace std; typedef int (*CompareFunc)(int a, int b);//声明一个函数指针void转载 2009-09-07 16:20:00 · 3961 阅读 · 0 评论 -
[转]typedef 使用
typedef似乎很简单,如typedef int integer;然而,这些简单的typedef语句容易让人产生一种误解,typedef就是一种宏替换,把后面的自定义类型替换成前面的已知类型,事实是这样的吗?显然不是! 首先可以肯定的是,我们不能这样去理解,因为虽然我们按照这样的理解方式去理解对于上面这种形式(typedef int integer)可以通过,但是对于其它方式是通不过的。转载 2009-09-07 15:42:00 · 999 阅读 · 0 评论 -
C++ 指针函数
指针函数说明他是一个返回值为指针的函数一个函数不仅可以返回一个整形数据的值,字符类型的值,实型的值,还可以带回指针类型的数据,使其指向某个地址单元。 指针函数严格的叫法是返回指针的函数,一般的定义格式为: 返回的类型标示符 *函数名(参数列表) eg:int *f(x,y);其中x,y是形式参数,f是函数名 调用后返回一个指向整型数据的地址指针f(x原创 2009-09-07 12:40:00 · 659 阅读 · 0 评论 -
C++ 函数指针
函数指针: 在程序运行中.函数代码是程序的算法指令部分,他们和数组一样也需要占用存储空间,都有相应的地址.可以使用指针变量指向数组的首地址,也可以使用指针变量指向函数代码的首地址,指向函数代码首地址的指针变量称为函数指针1:函数指针定义函数类型 (*指针变量名)(形参列表);函数类型-------函数的返回类型,由于"()"的优先级高于"*"所以指针变量名外的括号必不可少原创 2009-09-07 10:31:00 · 579 阅读 · 0 评论 -
C++下基本数据类型总结 (占位符 输入符 输出符)
在C++ symbian中有很多%d %S %x这样的符号 用的很灵活很零碎,在网上找了个贴子放到这里 学习下 以后忘了也好到这里查找.C++下基本类型所占位数和取值范围:符号属性 长度属性 基本型 所占位数 取值范围 输入符举例 输出符举例--转载 2009-08-26 18:33:00 · 19009 阅读 · 1 评论 -
C++中的特殊字符 symbian 路径
弄 symbian 的时候发现symbian 文件的路径名称都是 // 这样连接的,仔细想了下原来是转义字符的问题,还有就是今天看的文件系统的代码的例子检测一行读取完毕了没有用的是检测/r 估计也是这个问题 要好好的看下,在网上找到如下内容: 转义字符其实就是一个字符,用于表示一些特殊的字符和一些不可显示的字符。比如“/”它本身表示转义字符开始,如果要显示它的话就要使用“//”。再原创 2009-08-25 16:59:00 · 2699 阅读 · 0 评论 -
c++的命名空间namespace的作用
做测试的时候老是不知道cout什么的是什么意思 专门找了下 原来引入这个东西就是为了在大项目的时候减少了相同命名变量的冲突for example:#include namespace a{ int b=5;}namespace c { int b=8;}int main(){ int b=9; std::cout return 0;}的结果就是9 5 8 虽然他们的名字一样 但是原创 2009-08-19 11:25:00 · 632 阅读 · 0 评论 -
C++中#if #ifdef 的作用(转bigpretty的专栏)
一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。 条件编译命令最常见的形式为: /////////#ifdef 标识符 程序段1 #else 程序段2 #endif /////////它的作用是:当标识转载 2010-01-08 13:19:00 · 2764 阅读 · 2 评论