2013-02-20 5 views
3

그래서이 구조체 및 해당 구조체를 매개 변수로 사용하는 void 메서드가 있다고 가정합니다. void 메서드를 다른 메서드를 통해 반환 한 다음 나중에 호출 할 수 있습니까?함수를 반환 한 다음 나중에 호출하는 방법?

내가 가진 코드는 다음과 같습니다

struct Script{ 
    //variables 
} 

void foo(Script e) 
{ 

} 

function getfoo() 
{ 
    return foo; 
} 

void main(string[] args) 
{ 

    writeln("Hello World!"); 
    stdin.readln(); 
} 

답변

8
import std.stdio; 

struct Script 
{ 
    int x, y; 
} 

void foo(Script e) 
{ 
    writeln("Got: ", e); 
} 

void function(Script e) getfoo() 
{ 
    return &foo; 
} 

void main(string[] args) 
{ 
    auto func = getfoo(); 
    func(Script(1, 2)); 
} 
+0

가 나는 그들이 유형 D.에 정의 된 방식을 변경하는 방법을 좋아한다 –

관련 문제