Здравствуйте, Pavel Chikulaev, Вы писали:
PC>Я в шоке Читаю стандарт С# и С++/CLI.
PC>Программа на C++:
PC>PC>struct Base
PC>{
PC> virtual ~Base()
PC> {
PC> foo();
PC> }
PC> virtual void foo()
PC> {
PC> }
PC>};
PC>struct Derived : Base
PC>{
PC> virtual void foo()
PC> {
PC> std::cout << "Derived::foo" << std::endl;
PC> }
PC>};
PC>int main()
PC>{
PC> Base * b = new Derived;
PC> delete b;
PC>}
PC>
Стандартные хорошо описанные грабли С++. Правило KISS -- если структуре не нужен виртуальный деструктор -- зачем компилятору его самостоятельно прикручивать?