devxlogo

Exception specification

Exception specification

A function that may throw an exception can warn its users about that by specifying a list of exceptions it may throw, thus helping its users to catch such exceptions appropriately:

 	int divide (int, int) throw(zerodivide); //may throw an 								//exception of 									//type zerodivide (but 								//no other). 

If your function is exception-safe, i.e., does never throw any exception, it can be declared like this:

 	bool equals (int, int) throw(); //promises not to throw any 						  //exception ever

Mind that a function declared like this:

 	bool equals (int, int); 

on the other hand, says nothing about its exceptions, so it may throw any type of exception or not throw any exception at all.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist