나는 많은 다음과 같은 C ++ 코드를 보았습니다 typedef
.
typedef
C ++ 프리미티브를 사용하는 대신 이와 같은 많은 것을 사용하면 어떤 이점 이 있습니까? 이러한 이점을 얻을 수있는 다른 접근 방법이 있습니까?
결국, 데이터는 모두 메모리에 저장되거나 와이어를 통해 비트와 바이트로 전송됩니다. 정말로 중요합니까?
types.h:
typedef int16_t Version;
typedef int32_t PacketLength;
typedef int32_t Identity;
typedef int32_t CabinetNumber;
typedef int64_t Time64;
typedef int64_t RFID;
typedef int64_t NetworkAddress;
typedef int64_t PathfinderAddress;
typedef int16_t PathfinderPan;
typedef int16_t PathfinderChannel;
typedef int64_t HandsetSerialNumber;
typedef int16_t PinNumber;
typedef int16_t LoggingInterval;
typedef int16_t DelayMinutes;
typedef int16_t ReminderDelayMinutes;
typedef int16_t EscalationDelayMinutes;
typedef float CalibrationOffset;
typedef float AnalogValue;
typedef int8_t PathfinderEtrx;
typedef int8_t DampingFactor;
typedef int8_t RankNumber;
typedef int8_t SlavePort;
typedef int8_t EventLevel;
typedef int8_t Percent;
typedef int8_t SensorNumber;
typedef int8_t RoleCode;
typedef int8_t Hour;
typedef int8_t Minute;
typedef int8_t Second;
typedef int8_t Day;
typedef int8_t Month;
typedef int16_t Year;
typedef int8_t EscalationLevel;
오버플로를 피하기 위해 특정 유형에 항상 동일한 유형이 사용되도록하는 것이 논리적으로 보이지만, "int"가 거의 모든 곳에서 사용 된 코드를 자주 볼 수 있습니다. typedef
자주 생각처럼 조금 보이는 코드에 리드를 수행 보내고 :
DoSomething(EscalationLevel escalationLevel) {
...
}
그러면 어떤 토큰이 매개 변수를 실제로 설명하고 있는지 궁금합니다 : 매개 변수 유형 또는 매개 변수 이름?
Minute
로 type으로 선언 된 인수가있는 함수에 전달하는 것을 막을 수는 없습니다 Second
.