Updated:

less than 1 minute read

예제

  • 코드
    •  trait Job {
           fn job(&self);
       }
              
       struct A {}
              
       impl Job for A {
           fn job(&self) {
               println!("A job call");
           }
       }
              
       struct B {}
              
       impl Job for B {
           fn job(&self) {
               println!("B job call");
           }
       }
              
       fn main() {
           let values: Vec<Box<dyn Job>> = vec![Box::new(A {}), Box::new(B {})];
              
           for value in values.iter() {
               value.job();
           }
       }
      
  • 실행 결과
    •  A job call
       B job call