#include #include using namespace std; class Loud { public: Loud(char c) : flag(c) { cout << "ctor " << flag << '\n'; } ~Loud() { cout << "dtor " << flag << '\n'; } const char flag; }; Loud a='a'; // This is NOT an assignment. // Assignment are in functions, right? void foo() { Loud b('b'); abort(); } int main() { Loud c='c'; foo(); Loud d='d'; return 0; }