Enn*_*oji 6 c++ crash fault-tolerance
假设我们在C++中有一个SDK,它接受一些二进制数据(如图片)并做一些事情.是不是可以使这个SDK"防崩溃"?由于用户传递的无效输入(如异常短的垃圾数据),我主要意味着操作系统在内存访问冲突时强行终止.
我没有使用C++的经验,但是当我用Google搜索时,我发现了几个听起来像解决方案的方法(使用向量而不是数组,配置编译器以便执行自动边界检查等).
当我提出这给开发者,他说,这仍然是不可能的..不,我不相信他,但即便如此,是怎么样的Java语言处理呢?我以为JVM每次都会执行边界检查.如果是这样,为什么不能手动在C++中做同样的事情?
更新
"防止崩溃"我并不是说应用程序不会终止.我的意思是它不应该突然终止没有发生的事情的信息(我的意思是它会转储核心等,但是不可能显示像"参数x无效"等消息吗?)