C++
AngryBill
不忘初心,方得始终
展开
-
C++格式化输入输出
C++共有15个 输入输出 格式标记位,这15个标记位均为bit位,每个标记位都有自己的含义,且可以单独设置。 格式标记位的取值为0或1:0表示关闭(不使用此格式),1表示开启(使用此格式)。 15个标记位的含义可参考下面三张表: 标记位 含义 boolalpha 如开启,则输入和输出使用bool值(即Ture或False)转载 2014-03-02 10:01:42 · 962 阅读 · 0 评论 -
sprintf,snprintf的用法
int sprintf( char *buffer, const char *format [, argument] ... ); 除了前两个参数类型固定外,后面可以接任意多个参数。而它的精华,显然就在第二个参数:格式化字符串上。 printf和sprintf都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个转载 2014-04-11 08:36:09 · 899 阅读 · 0 评论 -
STL中的常用算法
一、非变异算法 是一组不破坏操作数据的模板函数,用来对序列数据进行逐个处理、元素查找、子序列搜索、统计和匹配。非变异算法具有极为广泛的适用性,基本上可应用与各种容器。 1查找容器元素find 它用于查找等于某值的元素。它在迭代器区间[first,last)(闭开区间)上查找等于value值的元素,如果迭代器i所指的元素满足*i=value,则返回迭代器i;未找到满足条件的元素,返转载 2014-03-25 20:09:33 · 619 阅读 · 0 评论 -
关于C++中的友元函数的总结
1.友元函数的简单介绍 1.1为什么要使用友元函数 在实现类之间数据共享时,减少系统开销,提高效率。如果类A中的函数要访问类B中的成员(例如:智能指针类的实现),那么类A中该函数要是类B的友元函数。具体来说:为了 使其他类的成员函数直接访问该类的私有变量。即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数。 实际上具体大概有下面两种情况需要使用友元转载 2014-03-26 00:46:32 · 630 阅读 · 0 评论 -
C++学习之Pair
Pair类型概述 pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,基本的定义如下: pair a; 表示a中有两个类型,第一个元素是int型的,第二个元素是string类型的,如果创建pair的时候没有对其进行初始化,则调用默认构造函数对其初始化。 pair a("James", "Joy"); 也可以像上面一样在定义的时候直接转载 2014-03-25 17:56:03 · 542 阅读 · 0 评论 -
C 标准库头文件的 C++ 版本(c++primer)
C++ 标准库除了定义了一些选定于 C++ 的设施外,还包括 C 标准库。C++ 中的头文件 cctype 其实就是利用了 C 标准库函数,这些库函数就定义在 C 标准库的 ctype.h 头文件中。 C 标准库头文件命名形式为 name 而 C++ 版本则命名为 cname ,少了后缀,.h 而在头文件名前加了 c 表示这个头文件源自 C 标准库。因此,cctype 与 ctype.h 文转载 2014-04-15 21:59:58 · 694 阅读 · 0 评论 -
c++ algorithm 的用法
1 , accumulate() template inline _Ty accumulate(_II _F, _II _L, _Ty _V) {for (; _F != _L; ++_F) _V = _V + *_F; return (_V); } 作用就是计算累积. 2,adjacent_difference() _OI _Adjacent_difference(_II _F,转载 2014-03-06 16:45:54 · 1686 阅读 · 0 评论 -
C++中将string类型转换为int类型
#include int str2num(std::string s) { int num; std::stringstream ss(s); ss >> num; return num; } string int2str(int i) { std::string s; stringstream ss(s); ss return ss.str(); }原创 2014-03-06 01:05:48 · 1010 阅读 · 0 评论 -
C++中string的用法
1.声明一个C++字符串 声明一个字符串变量很简单: string Str; 这样我们就声明了一个字符串变量,但既然是一个类,就有构造函数和析构函数。上面的声明没有传入参数,所以就直接使用了string的默认的构造函数,这个函数所作的就是把Str初始化为一个空字符串。String类的构造函数和析构函数如下: a) string s; //生成一个空字符串s b)转载 2014-03-03 09:59:01 · 796 阅读 · 0 评论 -
C++new的用法
c++中,new的用法很灵活,这里进行了简单的总结: 1. new() 分配这种类型的一个大小的内存空间,并以括号中的值来初始化这个变量; 2. new[] 分配这种类型的n个大小的内存空间,并用默认构造函数来初始化这些变量; #include #include using namespace std; int main(){ //char*转载 2014-03-02 11:49:07 · 800 阅读 · 0 评论 -
C++模板学习
1. 模板的概念。 我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。 //函数1. int max(int x,int y); {return(x>y)?x:y ;} //函数2.转载 2014-03-02 10:11:31 · 651 阅读 · 0 评论 -
二叉树重建及二叉树广度优先遍历
输入一棵二叉树的先序遍历序列和中序遍历序列,输出它的先序遍历、中序遍历、后序遍历和广度优先遍历序列原创 2014-12-14 19:47:59 · 1890 阅读 · 1 评论