摘要:
一、异常的定义及C++中的异常处理 异常是指存在于运行时的反常行为,这些行为超出了函数正常功能的范围。典型的异常包括失去数据库连接以及遇到意外输入等。 **异常检测:**当程序的某部分检测到一个它无法处理的问题时,需要用到异常处理。此时,检测出问题的部分应该发出某种信号以表明程序遇到了故障, 阅读全文
摘要:
简介 regex是C++标准库中用于正则表达式(regular expression)的部分。 大致有如下常用组件: 组件名称 作用 regex 表示有一个正则表达式的类 regex_match 将一个字符序列与一个正则表达式匹配 regex_search 寻找第一个与正则表达式匹配的子序列 reg 阅读全文
摘要:
#include<vector> #include<map> #include<iostream> #include<memory> using namespace std; struct ListNode { int val; ListNode* next; ListNode(int x) : v 阅读全文
摘要:
#include<vector> #include<map> #include<iostream> using namespace std; /*暴力遍历 vector<int> twoSum(vector<int>& nums, int target) { vector<int> ret; if( 阅读全文
摘要:
题目要求 给定一个二叉树,返回它的中序 遍历。 示例 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 解答: 迭代算法可用栈保存曾经路过的中序结点,回溯时可用bool型变量屏蔽对左子树的访问,避免发生死循环。 代码及分 阅读全文
摘要:
基本分析可以看另一篇文章C++实现四则运算器(无括号) 栈的实现 //stack.h #ifndef STACK_H #define STACK_H #include<iostream> class stack_int { private: int* bottom; //栈底 int* top; / 阅读全文
摘要:
完成度更高的有括号版本C++实现四则运算器(有括号) 对于无括号的计算器,实现起来比较容易,下面让我们一步步实现。 举例 首先明确需要实现怎样的程序,对于无括号的计算器,大概做成这样就可以了: 52+34*3-4/2= 分析 对于例子中的表达式,由于乘除运算的优先级高于加减运算,我们不能直接从左 阅读全文
摘要:
WSL是“Windows Subsystem for Linux”的缩写,WSL让我们能够在Window10下直接使用Linux命令行,相比虚拟机而言,其开启速度要快上很多;相比云主机,又无需付费,且由于WSL位于本地,在VS中编译速度相对要快上许多。 WSL的安装网上有许多教程,就不多加叙述。 阅读全文
摘要:
上一篇文章 "Visual Studio 2019 基于Linux平台的C++开发" 中介绍了如何配置通过VS进行Linux C++开发的环境。 这一篇主要介绍如何使用libpthread.so这类的动态链接共享库。 如果是在Linux平台,GCC或者g++,想要编译含有例如pthread的代码,需 阅读全文
摘要:
由于很多unix特有的函数无法在Windows上使用,而Vim又用的不太顺手,突然想到最初用vs的时候有一个基于Linux的C++开发。在网上找了很多教程后,发现还是官方的教程比较详细,不过其中也有一些踩过的坑。 "使用VisualStudio C++的Linux开发" 官方文档中有的内容就不重复了 阅读全文