VEXcode Pro V5에서 매개변수를 사용하여 Void 함수 작성

함수에 특정 정보를 제공하고 싶을 때가 있을 것입니다. 이를 통해 함수는 호출될 때마다 수신된 정보를 기반으로 그에 따라 작업을 수행할 수 있습니다. 다음 샘플은 작동 방식을 보여줍니다.


샘플: 매개변수를 사용하여 웃는 얼굴을 그리는 프로그램

다음 예에서는 올바르게 사용되는 전역 변수의 예도 보여줍니다.

사용자 정의 함수를 사용하지 않고:

int MaxX = 484, MaxY = 278;

int main() { 
  vexcodeInit();

  int centerX = MaxX/2, centerY = MaxY/2;

  //얼굴
	Brain.Screen.drawCircle(centerX, centerY, 100);

  //왼쪽 눈
  int space = 20; /*이것은 화면 상단을 기준으로 눈의 간격을 제공합니다. 원하는 대로 조정할 수 있습니다.*/
  centerX = MaxX/2+space;
  centerY = MaxY/2-30;
  Brain.Screen.drawCircle(centerX, centerY, 20);

  //오른쪽 눈  
  /*...여기서 오른쪽 눈에 대한 코드를 계속 수행할 수 있습니다*/

  //웃는 입에 대한 코드를 계속 수행할 수 있습니다
  /*...여기서 웃는 입에 대한 코드를 계속 수행할 수 있습니다
    ... etc.
    다른 크기를 그리려면 전체 코드 세트를 다시 반복해야 합니다.
    */
}

사용자 정의 함수의 경우:

int MaxX = 484, MaxY = 278;
const char 왼쪽=1, 오른쪽=2;

void drawFace(int size){
  /*...호출자 기능의 크기 매개변수를 기반으로 한 얼굴에 대한 코드.*/

}

//side == 왼쪽 또는 오른쪽
void drawEye(char side){
  /*...호출자 기능의 크기 매개변수를 기반으로 눈에 대한 코드.*/
}

//side == Left 또는 Right
void drawMouth(bool smile, int size){
  /*...code 호출자의 크기 매개변수를 기반으로 입의 경우. 여기에는 웃는지 찡그린지 여부와 너비가 포함됩니다.*/
}

int main() { 
  vexcodeInit();

  그리기페이스();
  drawEye(왼쪽);
  drawEye(오른쪽);

  //이것으로 정말 재미있을 것 같아요...
  while (true){
    drawMouth(true, 30);
    대기(1000, msec);
    drawMouth(false, 30);
    대기(1000, msec);
  }  
}

다음은 호출자 함수 main()의 논리 흐름 순서를 보여줍니다.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: