// 函数嵌套
int demo1()
{
int x = 3;
int bar(int z)
{
return x + z;
}
return bar(2) * bar(3);
}
// 闭包
int delegate(int) add(int lhs)
{
int foo(int rhs)
{
return lhs + rhs;
}
return &foo;
}
void demo2()
{
int delegate(int) addFive = add(5);
int twelve = addFive(7);
writefln("5 + 7 is %d", twelve);
}
// 闭包(匿名函数)
int delegate(int) add2(int lhs)
{
return delegate int (int rhs)
{
return lhs + rhs;
};
}
void demo3()
{
int delegate(int) addFive = add2(5);
int twelve = addFive(7);
writefln("5 + 7 is %d", twelve);
}
int demo1()
{
int x = 3;
int bar(int z)
{
return x + z;
}
return bar(2) * bar(3);
}
// 闭包
int delegate(int) add(int lhs)
{
int foo(int rhs)
{
return lhs + rhs;
}
return &foo;
}
void demo2()
{
int delegate(int) addFive = add(5);
int twelve = addFive(7);
writefln("5 + 7 is %d", twelve);
}
// 闭包(匿名函数)
int delegate(int) add2(int lhs)
{
return delegate int (int rhs)
{
return lhs + rhs;
};
}
void demo3()
{
int delegate(int) addFive = add2(5);
int twelve = addFive(7);
writefln("5 + 7 is %d", twelve);
}