【解决】VsCode C++异常【terminate called after throwing an instance of ‘char const‘】

大纲

在写栈的相关代码时,使用了 throw 抛异常,但是异常没有抛成功,命令行出现了下面的内容。

问题解决

原代码为

cpp 复制代码
int main(){
    ArrayStack stack;
    stack.push(1);
    stack.push(4);
    stack.push(6);
    while(!stack.empty()){
        cout << stack.top() << " ";
        stack.pop();
    }
    cout << endl;
    cout<< "size " << stack.size()<<endl; 
   
    stack.pop();
    cout << stack.top() << endl;
    
    
    return 0;
}

修改后的代码,增加try catch 即问题解决。

cpp 复制代码
int main(){
    ArrayStack stack;
    stack.push(1);
    stack.push(4);
    stack.push(6);
    while(!stack.empty()){
        cout << stack.top() << " ";
        stack.pop();
    }
    cout << endl;
    cout<< "size " << stack.size()<<endl; 
    try{
        stack.pop();
        cout << stack.top() << endl;
    }catch(char const *str){
        cout<< str << endl;
    }
    
    return 0;
}

问题解决正确抛出异常

相关推荐
mjhcsp18 小时前
C++ 递推与递归:两种算法思想的深度解析与实战
开发语言·c++·算法
_OP_CHEN18 小时前
算法基础篇:(三)基础算法之枚举:暴力美学的艺术,从穷举到高效优化
c++·算法·枚举·算法竞赛·acm竞赛·二进制枚举·普通枚举
m0_7482480218 小时前
《详解 C++ Date 类的设计与实现:从运算符重载到功能测试》
java·开发语言·c++·算法
卡提西亚18 小时前
一本通网站1122题:计算鞍点
c++·笔记·编程题·一本通
im_AMBER18 小时前
Leetcode 47
数据结构·c++·笔记·学习·算法·leetcode
我命由我1234518 小时前
Java 并发编程 - Delay(Delayed 概述、Delayed 实现、Delayed 使用、Delay 缓存实现、Delayed 延迟获取数据实现)
java·开发语言·后端·缓存·java-ee·intellij-idea·intellij idea
HLJ洛神千羽18 小时前
C++程序设计实验(黑龙江大学)
开发语言·c++·软件工程
kyle~18 小时前
算法数学---差分数组(Difference Array)
java·开发语言·算法
曹牧18 小时前
C#:三元运算符
开发语言·c#
Jonathan Star19 小时前
MediaPipe 在Python中实现人体运动识别,最常用且高效的方案是结合**姿态估计**(提取人体关键点)和**动作分类**(识别具体运动)
开发语言·python·分类