Передача метода через делегат и напрямую, в чем разница?
От: Eldar9x  
Дата: 06.12.11 03:58
Оценка:
Наткнулся на такой момент:

        class Synchronized
        {
            IFiber m_fiber;

            public Synchronized()
            {
                m_fiber = new PoolFiber();
                m_fiber.Start();
            }

            public void Invoke(Action action)
            {
                m_fiber.Enqueue(action);
            }

            public void AnyMethod()
            {
                // ... операции с полями объектами
            }

        }

var obj = new Synchronized();
obj.Invoke(() => obj.AnyMethod()); 
obj.Invoke(obj.AnyMethod);


Оба варианта вызова метода Invoke нормально компилируются. В чем между ними разница?
int i;
i = (i++)+(i++);
cout << i;
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.