cout << "<<CreateIBar()" << endl;
printf("<<CreateIBar()\n");
CreateIBar( void** result )    // a typical factory function (that calls AddRef)  {    cout << ">>CreateIBar() --> ";    IBar* barp = new IBar;    cout << "IBar@" << STATIC_CAST(void*, barp) << endl;    barp->AddRef();    *result = barp;    cout << "<<CreateIBar()" << endl;    return 0;  }