QA Automation/dart

8. Typedef

kokorii_ 2023. 5. 16. 00:05

1. 선언과 사용

main의 첫번째 줄에서 operation에는 add라는 함수가 들어있음 

void main(){
  
  Operation operation = add;
  
  int result = operation(10, 20, 30);
  print(result);
  
  operation = sub;
 
  int res2 = operation(30,20,10);
  print(res2);
  
  //아래와 같이 많이씀 
  int res3 = calculate(30,40,50, add);
  print(res3);
  
}

//signature : return type과 parameter의 형태 
typedef Operation = int Function(int x, int y, int z);

int add(int x, int y, int z) => x + y + z;
int sub(int x, int y, int z) => x - y - z;

int calculate(int x, int y, int z, Operation operation){
  return operation(x,y,z);
}