Is it not possible to make a C++ application "Crash Proof"?

Posted by Enno Shioji on Stack Overflow See other posts from Stack Overflow or by Enno Shioji
Published on 2010-12-23T05:57:34Z Indexed on 2010/12/23 7:54 UTC
Read the original article Hit count: 167

Filed under:
|
|

Let's say we have an SDK in C++ that accepts some binary data (like a picture) and does something. Is it not possible to make this SDK "crash-proof"? By crash I primarily mean forceful termination by the OS upon memory access violation, due to invalid input passed by the user (like an abnormally short junk data).

I have no experience with C++, but when I googled, I found several means that sounded like a solution (use a vector instead of an array, configure the compiler so that automatic bounds check is performed, etc.).

When I presented this to the developer, he said it is still not possible.. Not that I don't believe him, but if so, how is language like Java handling this? I thought the JVM performs everytime a bounds check. If so, why can't one do the same thing in C++ manually?

UPDATE
By "Crash proof" I don't mean that the application does not terminate. I mean it should not abruptly terminate without information of what happened (I mean it will dump core etc., but is it not possible to display a message like "Argument x was not valid" etc.?)

© Stack Overflow or respective owner

Related posts about c++

Related posts about crash