【Dart】main(List arguments)을 실행해 보십시오. {}

9391 단어 Darttech

개요


샘플 코드에서main()에 다음과 같은 매개 변수가 있습니다main(List<String> arguments),main()에 매개 변수를 어떻게 제출해야 할지 몰라서 조사 내용을 글로 썼습니다.
모르는 점이나 잘못 등이 있다면 지적해 주시면 감사하겠습니다.
(연락 주세요.)
만약 이 보도가 누군가의 참고가 된다면 정말 좋겠다.
https://dart.dev/guides/language/language-tour#the-main-function
여기에 기재된 다음 코드를 이동해 보세요.
Here’s an example of the main() function for a command-line app that takes arguments:
매개 변수 명령줄에 적용되는main () 함수의 예시입니다.
// Run the app like this: dart args.dart 1 test
void main(List<String> arguments) {
  print(arguments);

  assert(arguments.length == 2);
  assert(int.parse(arguments[0]) == 1);
  assert(arguments[1] == 'test');
}

운영 환경


macOS 12.3.1
Dart SDK version: 2.16.0 (stable)
zsh 5.8

해설물


만약command-line app로main(List〃String&arguments)을 실행하면main의 매개 변수가 됩니다
값을 내서 집행할 수 있을 것 같습니다.
※ command-line app와 assert는 뒤에 정리되어 있습니다.
실행 방법은 주석에서 말한 바와 같이main()이 적힌 파일과List의 요소를 비워두고terminal로 기술하면 실행할 수 있습니다.
주석의 명령 구조는 다음과 같다.
dart [実行ファイルのpath] [List<String>に入れる要素1] [List<String>に入れる要素2]... 
이 명령을 terminal로 실행하면
각 요소는List의 순서에 따라main()의 매개 변수로 실행됩니다.
그러나 샘플 코드에는 assert 문구가 있는데 주석에서 보듯이terminaldart에서 실행하더라도 assert를 실행하지 않습니다.
assert 시작하기
dart run --enable-asserts args.dart 1 test
참조dart run에 옵션--enable-asserts을 추가해야 합니다.

command-line app 소개


terminal이나 명령줄에서 파일을 직접 실행하는 것처럼 명령줄에서 실행되는 프로그램입니다.
용어가 좀 달라요.
콘솔 응용 프로그램은 현재 상태와 처리 결과를 순서대로 문자 메시지의 출력으로 전송하는 응용 프로그램이다.OS와 같은 명령줄 인터페이스(CLI)에서 실행합니다.
콘솔 어플리케이션은 IT 용어 사전 e-Words를 의미합니다.
Dart의 다른 언어도 있는데 호칭 방식은 Cli 도구, 콘솔 애플리케이션 등 다양하다.
Dart에서는 command-line app라고 불리는 것 같습니다.

시즌3


() 내의 조건이 충족되었는지 assert에서 검사합니다.() 내의 조건이 충족되지 않으면 UnhandException을 실행하여 실행을 중지합니다.

구문


assert(condition, optionalMessage);
  • condition(조건)이 충족되지 않으면 다음 줄로 전진하지 않습니다.
    만족하지 않으면 UnhandException을 토해낸다.
  • optionalMessage는 UnhandException에서 표시되는 메시지입니다.
  • assert는 Fluter의 debug 모드에만 유효합니다.런으로 여겨지다.
  • 데이터run과 같은 명령으로 프로그램을 실행할 때 명령줄 표시-enable-asserts를 붙여야 한다.
  • // sample
    dart run --enable-asserts lib/test.dart
    

    시험해 보다


    시작의 샘플 코드를 실제로 시험적으로 운행해 보다.
    assert가 있는지 알아보기 위해 각 assert 문장 뒤에 print를 넣습니다
    args.dart
    void main(List<String> arguments) {
      print(arguments);
    
      assert(arguments.length == 2, 'list length is not 2!');
      print('first assertion');
      assert(int.parse(arguments[0]) == 1);
      print('second assertion');
      assert(arguments[1] == 'test');
      print('third assertion');
    }	
    
    terminal의 모든 assert를 통과하기 위해 다음과 같이 실행해 보십시오.
    terminal
    % dart run --enable-asserts lib/samples/args.dart 1 test
    
    실행 결과
    terminal
    [1, test]
    first assertion
    second assertion
    third assertion
    
    모든 assert가 실행되었다는 것을 알고 있습니다.
    다음은 assert와 관련된 내용을 써서 실행해 보세요.
    terminal
    % dart run --enable-asserts lib/samples/args.dart 1 test test2
    
    실행 결과
    terminal
    [1, test, test2]
    Unhandled exception:
    'package:youtube_data_sample/samples/args.dart': Failed assertion: line 8 pos 10: 'arguments.length == 2': list length is not 2!
    
    이런 느낌으로 Unhandled exception이 나와요.
    assert 문서에 기술된 optinal Message도 표시됩니다.

    최후


    여기까지 읽어주셔서 감사합니다!

    사이트 축소판 그림


    main 정보()
    https://dart.dev/guides/language/language-tour#the-main-function
    command-line app 정보
    https://dart.dev/tutorials/server/cmdline
    시즌3
    https://dart.dev/guides/language/language-tour#assert

    좋은 웹페이지 즐겨찾기