原创 stl lower_bound 和 upper_bound
函数lower_bound()在first和last中的前闭后开区间进行二分查找,返回大于或等于val的第一个元素位置。如果所有元素都小于val,则返回last的位置举例如下:一个数组number序列为:4,10,11,30,69,70,96,100.设要插入数字3,9,111.pos为要插入的位置的下标则pos = lower_bound( number, number + 8,
2013-06-29 14:43:39 798
转载 stl count_if()函数
6.用STL的通用算法count_if()来统计list中的元素个数 count_if()是count()的一个更有趣的版本。他采用了STL的一个新组件,函数对象。count_if() 带一个函数对象的参数。函数对象是一个至少带有一个operator()方法的类。有些STL算法作为参数接收函数对象并调用这个函数对象的operator()方法。 函数对象被约定为STL算法调
2013-06-29 11:01:56 1200
转载 strcpy
已知strcpy函数的原型是char* strcpy(char* strDest,const char* strSrc);1.不调用库函数,实现strcpy函数2.解释为什么要返回char*;1.strcpy的实现代码char* strcpy(char* strDest,const char* strSrc){ if((strDest == NULL) || (st
2013-06-28 10:09:36 727
原创 函数模版与模版的特化
如果这样写:程序运行结果是过的#include#include#includeusing namespace std;namespace Myfunc{ template T min(const T&t1,const T&t2) { return t1 } template const char* min(const char* const&
2013-06-27 21:00:59 663
原创 sstream与模版函数
实现一个类型转化程序://文件名 p3_8.h#ifndef P3_8_H#define P3_8_H#include#includetemplateT fromString(const std::string& s)//实现将string转化成T类型{ std::istringstream is(s); T t; is>>t; return t;
2013-06-23 10:23:52 718
原创 void * 指针
#includeusing namespace std;int main(){void *f;int i=1,*p;f=&i;cout<<"1 f is "<<f<<endl;p=(int *)f;f=p;cout<<"&i is "<<&i<<endl;cout<<"p is "<<p<<" "<<*p<<endl; /*--------重点--------*/cout<<"2 f is"<<f
2013-06-18 10:33:26 756