new
一般用法:new 类型 【初值】
比如:
int *i=new int;
int *j=new int(100);
int *k=new int[3];
delete
一般用法:delete 【】指针变量
比如:
delete i;
delete j;
delete []k;
简单来说,即为一个申请空间,一个释放空间,在不知数组长度,但又不想浪费空间一次申请特大空间,可以先计算输入的长度,再重新申请变量空间,既不浪费也完成任务。
异常处理
异常是程序在执行期间产生的问题。C++ 异常是指在程序运行时发生的特殊情况,比如尝试除以零的操作。
异常提供了一种转移程序控制权的方式。C++ 异常处理涉及到三个关键字:try、catch、throw。
throw: 当问题出现时,程序会抛出一个异常。这是通过使用 throw 关键字来完成的。
catch: 在您想要处理问题的地方,通过异常处理程序捕获异常。catch 关键字用于捕获异常。
try: try 块中的代码标识将被激活的特定异常。它后面通常跟着一个或多个 catch 块。
struct A{};
A a;
double Div(int a, int b)
{
if( b == 0 )
{
throw a;//抛出异常
}
return (a/b);
}
int main()
{
......
try
{
...... //执行程序
}
catch(A) //捕捉异常
{
......//异常后的操作
}
......
}
异常处理给了c++更好的对程序异常的应对策略,更加简洁易懂程序出错位置以及出错原因。