NGWS SDK Documentation  

This is preliminary documentation and subject to change.
To comment on this topic, please send us email at ngwssdk@microsoft.com. Thanks!

Compiler Error C3364

'delegate' : invalid second argument for Delegate constructor; needs to be an lvalue

The second parameter of the delegate’s constructor takes either the address of a member function or the address of a static member function of any class. Both are treated as simple addresses.

The following sample generates C3364:

#using <mscorlib.dll>

__delegate int D(int, int);

__gc class C {
public:
   int mf(int, int) {
      return 1;
   }
};

void main() {
   C *pC = new C;
   System::Delegate *pD = new D(pC, pC->mf(1, 2));   // C3364
   // try the following line instead
   // System::Delegate *pD = new D(pC, &C::mf);
}