How does using Aprobe for C++ differ from using Aprobe for C or Ada?
These are interesting differences: • memory • objects • mangling • exceptions • generics/templates Aprobe tries to make the probe interface common, but language differences may get in the way: • C++ applications tend to be much bigger, which can make the RootCause GUI very slow. • C++ calls extra procedures, like class constructor/destructor. • C++ has objects whose members Aprobe tries to access, with varying degrees of success. • C++ has name mangling that Aprobe tries to hide, with varying degrees of success. • Aprobe does not support throwing C++ exceptions as it does for Ada exceptions. • C++ throws objects with exceptions, while Aprobe only logs the object’s address. • C++ uses standard templates whose expanded form is all that Aprobe sees. • C++ has multiple inheritance whose rules are resolved by the compiler. These differences can make Aprobe a little harder to use on a C++ application, or a little less satisfying when a probe logs data to be formatted for easy reading. For ex