파라미터 질문있습니다~
Q1. Dart 언어에서 Optional parameters에도 Name을 붙여 파라미터 값 대입 시 순서를 다르게 할 수 있나요?
void function1(int a, [int b]) {..}
// b에 이름을 붙여 function1을 호출할 수 있는가
Q2. 하나의 함수에 Optional parameters, Named parameters 둘 다 쓴다고 하면, 작성 순서는 어떻게 되나요?
void function2(int a, {int? b}, [int c]) {..}
// 둘을 같이 쓸 일이 있는지는 모르겠지만 궁금합니다
Câu trả lời 1
1
안녕하세요. 답변도우미입니다.
Optional parameters 는 [] 를 적용한 것을 의미하고, Named parameters 은 {} 를 적용한 것을 의미한 것을 말씀하시는 것이죠. 이렇게 이야기드린 이유는 Optional parameters 는 결국 해당 인자값을 넣어도 되고 안넣어도 되는 기능을 가지고 있는데요. 이 기능적 측면을 고려한 후, 답변을 드리면요.
Q1: 넵 가능합니다. 강의에서 설명드린 Named parameters 에서, required 를 적용하지 않은 케이스를Named Optional Parameters 라고도 부를 수 있는데요. 이 경우 인자값을 반드시 넣지 않아도 되고, 인자명으로 인자값을 선언하기 때문에, 함수 호출시, 인자값 적용 순서를 달리해도 됩니다. 즉 강의의 Optional Parameter 의 기능적 측면을 생각한다면, 이와 같이 활용하실 수 있습니다.
void main() {
test_param(123); # s1, s2 둘다 안넣어도 되었습니다~
test_param(123,s1:'hello'); # s2 인자를 안넣어도 되었고요~
test_param(123,s2:'hello',s1:'world'); # 순서도 바꾸었고요~
}
test_param(int n1,{String? s1,String? s2}) {
print(n1);
print(s1);
print(s2);
} Q2: Optional parameters 는 [] 를 적용한 것을 의미하고, Named parameters 은 {} 를 적용한 것이라는 측면으로 봤을 때는, [], {} 를 동시에 쓰는 것은 허용하지 않습니다. 다만 위의 Named Parameters 의 required 를 붙이거나, 안붙이거나 하는 기능을 사용해서, Optional Parameter 의 기능적 측면은 Named Parameters 를 사용해서, 지원이 됩니다.
감사합니다.
6강에 비디오가 이상해요
0
27
2
질문있습니다!
0
20
0
SEO에 대해
1
60
2
플러터 프로젝트를 시작할수 없어요
0
287
1
강의할때 쓰이는 문서는 어디서 확인할 수 있나욧?
0
155
1
theme useMaterial3 적용 안됨.
0
151
1
AppBar 적용안됨
0
139
1
강의 방법 및 효율적인 학습 팁 강의화면 안보이는 이슈
0
183
1
안드로이드 스튜디오 테마 문의 드립니다.
0
190
1
flutter 의 window 환경변수 path 경로 변경된 것 같아요
0
273
1
앱의 백엔드와 프론트엔드에 관한 문의
0
184
1
회원가입 오류
0
287
1
강의 질문입니다.
0
235
2
flutter 설치중 오류 network resource
0
581
1
질문있습니다.
0
239
2
강의 노트를 보고 싶은데 어디서 봐야되요.
0
266
1
firebase 프로젝트 연결 오류
0
759
1
플러터 다트 질문
0
303
1
몇가지 질문드립니다.
0
458
2
Provider와 Stateful
0
601
1
명령어 프롬프트에서 에러
0
680
1
제공된 코드들을 실행시키면 sdk파일을 받으라고 뜨는데
0
347
1
flutter pub add provider
0
418
1
섹션9 동영상 중복
0
293
1

