//遍历容器元素 for_each(iterator beg, iterator end, _callback);//将指定容器区间元素搬运到另一容器中 transform(iterator beg1, iterator end1, iterator beg2, _callbakc)。
//查找元素 find(iterator beg, iterator end, value); //条件查找 find_if(iterator beg, iterator end, _callback); //查找相邻重复元素 adjacent_find(iterator beg, iterator end, _callback); //二分查找法 bool binary_search(iterator beg, iterator end, value); //统计元素出现的次数 count(iterat
自定义异常类必须继承于标准异常类exception;自定义异常类必须重写标准异常中的what方法;virtual const char* what()const throw()//防止父类提前抛出异常 { return this->msg.c_str(); }
静态转换(static_cast)用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换。1、进行上行转换(把派生类的指针或引用转换成基类表示)是安全的;2、进行下行转换(把基类指针或引用转换成派生类表示)时,由于没有动态类型检查,所以是不安全的。
如果程序出现异常,但是没有被捕获,程序就会终止,这多少会促使程序员开发出来的程序更健壮一点。而如果使用C语言的error宏或者函数返回值,调用者都有可能忘记检查,从而没有对错误进行处理,结果造成程序莫名其面的终止或出现错误的结果。