«switch-statement» 태그된 질문

3
스위치의 기본 사례에서 중단
나는 break종종 마지막 사건 이후 에 포함하거나 포함하지 않을 때마다 약간 당황합니다 default. switch (type) { case 'product': // Do behavior break; default: // Do default behavior break; // Is it considered to be needed? } break유일한 목적은 코드가 나머지 switch-case를 통해 실행되는 것을 막는 것 입니다. 그런 다음 break일관성으로 …

17
거대한“스위치”설명 대신 OO 접근 방식을 사용해야하는 이유는 무엇입니까?
저는 .Net, C # 상점에서 일하고 있으며 더 많은 객체 지향 접근 방식이 아닌 많은 "케이스"와 함께 코드에 거대한 Switch 문을 사용해야한다고 주장하는 동료가 있습니다. 그의 주장은 Switch 문이 "cpu jump table"로 컴파일되고 따라서 가장 빠른 옵션이라는 사실로 일관되게 되돌아갑니다. 나는 솔직히 이것에 대해 논쟁을하지 않습니다 ... 왜냐하면 그가 무슨 …

12
`goto '부두를 피하는가?
switch처리해야 할 몇 가지 사례 가있는 구조가 있습니다. 는 switch과도하게 작동 enum값 조합을 통해 중복 된 코드의 문제를 제기한다 : // All possible combinations of One - Eight. public enum ExampleEnum { One, Two, TwoOne, Three, ThreeOne, ThreeTwo, ThreeOneTwo, Four, FourOne, FourTwo, FourThree, FourOneTwo, FourOneThree, FourTwoThree, FourOneTwoThree // ETC. } …


10
switch 문이나 long if… else chain을 사용해야합니까?
종종 switch 문에 대해 들었을 때 긴 if ... else 체인을 대체하는 방법으로 사용되었습니다. 그러나 switch 문을 사용하면 더 많은 코드를 작성하여 if ... else로 작성하는 것 같습니다. 또한 모든 호출에 대한 모든 변수를 동일한 범위로 유지하는 것과 같은 다른 문제가 있습니다 . 다음은 일반적으로 쓰는 흐름을 나타내는 코드입니다 ( …

8
Clang / LLVM이 열거 된 모든 사례를 다루는 switch 문에서 기본값 사용에 대해 경고하는 이유는 무엇입니까?
다음 enum 및 switch 문을 고려하십시오. typedef enum { MaskValueUno, MaskValueDos } testingMask; void myFunction(testingMask theMask) { switch (theMask) { case MaskValueUno: {}// deal with it case MaskValueDos: {}// deal with it default: {} //deal with an unexpected or uninitialized value } }; 나는 Objective-C 프로그래머이지만 더 많은 사람들을 위해 …

6
스위치 문 리팩토링 그리고 스위치 문을 실제로 사용합니까?
이 기사를 읽고 궁금해했습니다. 모든 스위치 문을 Dictionary 또는 Factory로 교체하여 프로젝트에 스위치 문이 전혀 없도록 모든 스위치 문을 제거합니까? 무언가가 더해지지 않았습니다. 문제는 switch 문이 실제로 사용되거나 사전 또는 팩토리 메소드로 대체하고 있습니까? 공장 사용 ...하지만 그게 전부입니다).

5
함수 호출의 다중 인수 대 단일 배열
매개 변수 집합을 가져 와서 SQL 쿼리의 조건으로 적용하는 함수가 있습니다. 그러나 조건 자체를 포함하는 단일 인수 배열을 선호했습니다. function searchQuery($params = array()) { foreach($params as $param => $value) { switch ($param) { case 'name': $query->where('name', $value); break; case 'phone': $query->join('phone'); $query->where('phone', $value); break; } } } 제 동료는 대신 …

6
함수 맵 대 스위치 명령문
요청을 처리하는 프로젝트를 진행 중이며 요청에는 명령과 매개 변수라는 두 가지 구성 요소가 있습니다. 각 명령의 처리기는 매우 간단합니다 (<10 줄, 종종 <5). 최소 20 개의 명령이 있으며 50 개가 넘는 명령이있을 수 있습니다. 나는 몇 가지 해결책을 생각해 냈습니다. 하나의 큰 스위치 / if-else 명령 명령을 함수에 매핑 정적 …

8
Java 7에서 문자열을 켜면 어떤 이점이 있습니까?
Java로 프로그래밍을 시작했을 때 switch 문이 문자열을 사용하지 않는다는 사실 때문에 좌절했습니다. 그런 다음 Enum을 사용하면 유형 안전 (쉽게 리팩토링을 제공함) 및 다른 개발자에게 명확함을 제공하는 대신 원시 값을 전달하지 않고 얻을 수있는 이점을 깨달았습니다. SE7에서는 이제 열거 형이 아닌 입력으로 문자열이있는 스위치를 사용하기로 결정하는 상황을 생각하기 위해 고심하고 있습니다. …

2
왜 언어가 switch 문에서 명시적인 fall-through를 사용하지 않습니까?
나는 읽고 있었다 우리가 사용해야하는 이유는 무엇 break에 switch? , 그리고 일부 언어 (예 : PHP 및 JavaScript)에서 암시 적 폴스 루가 허용되는 이유에 대해 궁금해했지만 명시적인 폴 스루에 대한 지원 (AFAIK)은 없습니다. 새 키워드를 작성해야 할 필요 continue는 없습니다. 완벽하게 적절하고 저자가 사건이 발생했는지 여부에 대한 모호성 문제를 해결합니다. …


4
모델과 뷰를 다룰 때 스위치 대 다형성
내 문제에 대한 더 나은 해결책을 찾을 수 없습니다. 요소 목록을 제공하는 뷰 컨트롤러가 있습니다. 이러한 요소는 B, C, D 등의 인스턴스가 될 수 있고 A에서 상속 할 수있는 모델입니다. 따라서 해당보기 컨트롤러에서 각 항목은 응용 프로그램의 다른 화면으로 이동하여 사용자가 그 중 하나를 선택하면 일부 데이터를 전달해야합니다. . 내 …

7
OO 언어로 객체 상태를 구현합니까?
나는 자동차 경주를 시뮬레이트하는 기본 코드 머신의 구현을 포함하는 Java 코드를 받았다. 이것은 고전적인 컴퓨터 과학 상태 머신이 아니라 여러 상태를 가질 수 있고 일련의 계산을 기반으로 상태를 전환 할 수있는 객체 일뿐입니다. 문제를 설명하기 위해 자동차 상태에 대한 일부 상수 (예 : OFF, IDLE, DRIVE, REVERSE 등)를 정의하는 중첩 …

6
switch 문에서 스위치를 줄이는 방법은 무엇입니까?
그래서 데이터베이스에서 두 사람을 기반으로 인사말 줄을 만드는 방법을 만들고 있습니다. 두 개의 이름 ( name1및 name2)과 두 개의 성별 ( gender및 gender2)의 네 가지 매개 변수가 있습니다 . 모든 성별 조합에 대해, 나는 다른 결과를 가지고 있습니다. 예를 들어, 성별 1이 M(man)이고 성별 2도 M이면 출력은 다음과 같아야합니다. Dear …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.