Hi Igor, My C++ experience is based only on error code methods. This is why I thought that exceptions based approach is unrelated to C++ at all.
I do remember we discussed all the pros and cons of these ways before. Could you find that old discussion and share it here? I'm on a mobile now, not easy to do on my own. Denis On Friday, January 20, 2017, Igor Sapego <[email protected]> wrote: > Hi Igniters, > > I'm the guy who mostly contribute in C++ Ignite client and I > need your advice. Mostly I'd like to hear from our users and > those who are experienced in C++. Currently we have two > versions of most API methods - the throwing one and the > one that returns error through output argument. This was initially > done because we were not sure which way of error-reporting > is going to be preferred by our users. > > Now this approach bloats C++ API a lot and makes it harder to > maintain and optimize code. I propose like to abandon and deprecate > non-throwing version of API and only leave throwing version, > but first I want to hear from you guys - what do you think? Does > anyone use non-throwing version of the API? Maybe your toolchain > does not support exceptions or are you disabling them on purpose? > > For those who prefer disabling exceptions I propose to introduce > some macros like IGNITE_DISABLE_EXCEPTIONS and add > some thread-local error-storing mechanism like ignite::GetLastError(). > > What do you guys think? > > Best Regards, > Igor >
