The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
함수에 특정 정보를 제공하고 싶을 때가 있을 것입니다. 이를 통해 함수는 호출될 때마다 수신된 정보를 기반으로 그에 따라 작업을 수행할 수 있습니다. 다음 샘플은 작동 방식을 보여줍니다.
샘플: 매개변수를 사용하여 웃는 얼굴을 그리는 프로그램
다음 예에서는 올바르게 사용되는 전역 변수의 예도 보여줍니다.
사용자 정의 함수를 사용하지 않고:
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()의 논리 흐름 순서를 보여줍니다.