나는 "Refactoring"을 Martin Fowler에 의해 읽습니다.유형 코드 란 무엇입니까?
이전에 본 적이없는 "유형 코드"라는 용어가 있습니다.
유형 코드 란 무엇입니까?
나는 "Refactoring"을 Martin Fowler에 의해 읽습니다.유형 코드 란 무엇입니까?
이전에 본 적이없는 "유형 코드"라는 용어가 있습니다.
유형 코드 란 무엇입니까?
union
유형 C에있는 한 문맥
:
이제Datum v;
switch (v.type)
{
case T_INT:
int_processing(v.u.i);
break;
case T_FLOAT:
float_processing(v.u.f);
break;
case T_DOUBLE:
double_processing(v.u.d);
break;
}
, T_LONG의 누락이 출신 :
typedef enum Type { T_INT, T_FLOAT, T_DOUBLE, T_LONG } Type;
typedef struct Datum
{
Type type;
union
{
int i;
float f;
long l;
double d;
} u;
} Datum;
이 같은 코드에 이르게 고의적으로 바꾸지 않겠습니까? 최근에 추가 되었습니까?이 스위치가 필요한 업데이트를 얻지 못했습니까?
그런 코드가 많고 T_UNSIGNED를 추가해야 할 경우 수정해야 할 장소를 많이 찾아야합니다. C를 사용하면 '유형을 나타내는 클래스 만들기'와 같은 간단한 솔루션이 없습니다. 이 작업을 수행 할 수 있지만 더 많은 객체 지향 언어를 사용하는 것보다 많은 노력이 필요합니다.
그러나 '유형 코드'라는 용어는 예에서 Type
유형을 참조합니다.
예제와 함께 매우 자세하고 쉬운 설명. 이제는 알아 냈습니다. Tahnk 너! –
유형 코드는 특정 용도로 제한된 유형을 사용하려는 경우이며, 해결 방법으로 "유형"의 가능한 모든 값을 나타내는 숫자 또는 문자열 상수를 만듭니다.
http://www.refactoring.com/catalog/replaceTypeCodeWithClass.html 아주 좋은 예가 있습니다. – Habib
감사합니다. 질문하기 전에 나는 그 인터넷 검색에서 링크를 읽었다. 고맙습니다. –