Указатели на функции - C#
Формулировка задачи:
как перевести подобное с c++ на c#
ответы "руками" и т.п. идут мимо
собственно интересует тема создание классов с указателями на метод, который будет инициализироваться в ходе программы
#include <iostream>
int f1(int iArg1, int iArg2)
{ return iArg1 + iArg2; }
int f2(int iArg1, int iArg2)
{ return iArg1 - iArg2; }
class MyClass
{
public:
int (*p1) (int, int);
MyClass(bool _Type)
{
if(_Type) { p1 = &f1; }
else { p1 = &f2; }
}
};
int main()
{
MyClass m1 = MyClass(true);
MyClass m2 = MyClass(false);
int a = 10, b = 8;
std::cout << m1.p1(a, b) << std::endl << m2.p1(a, b);
return 0;
}Решение задачи: «Указатели на функции»
textual
Листинг программы
class MyClass
{
public Func<int,int,int> p1;
static int f1(int iArg1, int iArg2) { return iArg1 + iArg2; }
static int f2(int iArg1, int iArg2) { return iArg1 - iArg2; }
public MyClass(bool type)
{
if (type) p1 = f1;
else p1 = f2;
}
}