Essential C++中文版学习笔记
伍粟
菜鸟码农
展开
-
7、异常处理--C++
1、抛出异常异常处理机制有两个主要成分:异常的鉴定与发出、以及异常的处理方式。C++通过throw表达式产生异常:if(_index>Triangular::_max_elems){ iterator_overflow ex(_index,Triangular::_max_elems); throw ex}2、捕获异常利用单条或多个catch子句来捕获被抛出的异常对象。catch子句由三部分组成:关键字catch、小括号内的一个类型或对象、大括号内的一组语句(用以处理异常)bool原创 2022-05-29 20:52:24 · 99 阅读 · 0 评论 -
C++ 常用泛型算法
#include <iostream>#include<numeric>#include<vector>#include<list>#include<algorithm>#include<functional>using namespace std;class TwiceOver{public: bool operator()(int val1,int val2){ return val1==v原创 2022-05-29 11:57:20 · 295 阅读 · 0 评论 -
6、以template进行编程
1、类型限定为class template定义一个inline函数,做法就像为non-template class定义一个inline函数一样;类似empty()函数。但是在类体外,class template member function的定义语法却不一样。template <typename elemType>class BinaryTree {public: BinaryTree(); BinaryTree( const vector< elemType >原创 2022-05-27 22:01:35 · 340 阅读 · 0 评论 -
5、面向对象的编程风格-C++
一、定义一个抽象基类如果基类定义有虚成员函数,基类的析构函数一般声明为虚函数(防止子类释放时,父类没有析构,造成内存泄漏)原创 2022-05-21 21:16:51 · 291 阅读 · 0 评论 -
4、基于对象的编程风格-C++
Stack.h#ifndef STACK_H#define STACK_H#include<string>#include<vector>#include<algorithm>using namespace std;class Stack{public: Stack();public: bool push(const string &elem); bool pop(string &elem); ...原创 2022-05-14 21:19:36 · 285 阅读 · 0 评论 -
3、泛型编程风格-C++
答案代码:#include<map>#include<set>#include<string>#include<fstream>#include <vector>#include <algorithm>#include <iostream>#include<iterator>using namespace std;typedef vector<string> vs...原创 2022-05-08 14:48:47 · 521 阅读 · 0 评论 -
2、面向过程的编程风格
1、请改写main(),使它允许用户不断输入位置值,直到用户希望停止为止。2、Pentagonal数列的求值公式是P(n)=n(3n-1)/2,借此产生1,5,12,22,35等元素值。3、将Pentagonal数列的求值函数拆分为两个函数。4、写一个函数,以局部静态的vector储存Pentagonal数列元素。5、重载max函数6、以template重新完成max函数。六道题的代码#include <iostream>#include<string>原创 2022-04-17 20:32:33 · 198 阅读 · 0 评论 -
1、C++指针数组灵活使用
#include <iostream>#include<vector>using namespace std;int main(){ const int seq_cnt=6; vector<int> Fiboncci,Lucas,Pell,Triangular,Square,Pentagonal; Fiboncci={1,1,2,3,5,8,13,21}; Lucas={1,3,4,7,11,18,29,47}; Pell原创 2022-04-02 21:40:03 · 753 阅读 · 0 评论