社区
系统维护与使用区
帖子详情
g++不支持异常处理 ?
yangrunhua
2000-02-15 05:11:00
有如下:
try
{
char *buffer=new char[1000000000];
if (buffer==NULL)
throw "out of memory";
}
catch(char*string)
{
cout<<string<<endl;
}
运行时竟然结果不是输出out of memory而是Aborted(core dumped)
Why?
...全文
489
7
打赏
收藏
g++不支持异常处理 ?
有如下: try { char *buffer=new char[1000000000]; if (buffer==NULL) throw "out of memory"; } catch(char*string) { cout<<string<<endl; } 运行时竟然结果不是输出out of memory而是Aborted(core dumped) Why?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenshuishui
2001-05-31
打赏
举报
回复
同意jansenzhu(),直接试一下
try
{
throw "out of memory";
}
catch(char*string)
{
cout<<string<<endl;
}
skt642
2001-05-31
打赏
举报
回复
67017关注!
茂奇软件
2000-02-20
打赏
举报
回复
[1000000000];
perhaps the interage have overfollow.
you can try it directly.
try
{
throw "out of memory";
}
catch(bad_alloc e) //也可以catch(exception e),e.what()报的信息不同
{
cout<<e.what()<<endl;
}
catch(char*string)
{
cout<<string<<endl;
}
netmare
2000-02-16
打赏
举报
回复
我在linux下试了一下,sintony说的有理,是new时系统throw的异常.
netmare
2000-02-16
打赏
举报
回复
在linux下将程序改为
#include <exception> //注意是exception而不是exception.h
#include <new>
try
{
char *buffer=new char[1000000000];
if (buffer==NULL)
throw "out of memory";
}
catch(bad_alloc e) //也可以catch(exception e),e.what()报的信息不同
{
cout<<e.what()<<endl;
}
catch(char*string)
{
cout<<string<<endl;
}
sintony
2000-02-15
打赏
举报
回复
因为char *buffer=new char[1000000000];
本身就throw "Aborted(core dumped)"
你catch 的是系统的出错信息
netmare
2000-02-15
打赏
举报
回复
core dump可能发生在catch之后,因为cout是带缓冲的,所以未显示出来,用cerr试试.
从你的程序看,catch时除了显示错误信息后未作其他处理,若在catch之后又使用了buffer就会core dump了
gcc
g++
离线安装包
使用
G++
可以编译、链接C++程序,同时提供了许多现代C++特性,如模板、
异常处理
和STL(Standard Template Library)等。 **离线安装GCC和
G++
**: 离线安装通常涉及下载预先构建好的软件包,然后在目标系统上进行手动...
统信UOS 用
g++
( 64 位)
C++是一种面向对象的编程语言,它扩展了C语言的功能,提供了类、对象、模板、
异常处理
等高级特性。使用
g++
编译C++程序时,通常的步骤包括预处理、编译、汇编和链接。 1. 预处理:
g++
会处理#include指令,展开宏定义...
gcc和
g++
的区别
G++
实际上是一个前端程序,专门用于处理C++源代码,而GCC则是一个更广泛的编译器集合,
支持
多种编程语言,包括C、C++、Objective-C、Fortran、Ada等。 误区一:GCC只能编译C代码,
G++
只能编译C++代码 这个观点是不...
gnu
g++
源码 libstd
g++
在这个过程中,
G++
利用了GCC的前端技术,能够
支持
多种编程语言,并且对C++的模板、多态、
异常处理
等特性有良好的
支持
。 Libstdc++是
G++
的关键组成部分,它是C++标准库的实现,包括了iostream、algorithm、vector、...
g++
4.4.4-14ubuntu5-i386
g++
4.4.4版本提供了许多现代C++语言特性,如模板元编程、
异常处理
、STL(标准模板库)等,使开发人员能够编写高效且可维护的代码。 Ubuntu 10.10,代号“Maverick Meerkat”,是Ubuntu发布的一个重要版本。在这个...
系统维护与使用区
19,615
社区成员
74,562
社区内容
发帖
与我相关
我的任务
系统维护与使用区
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
复制链接
扫一扫
分享
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章