이것은 다소 사소한 일일 수도 있지만 C#에서는 int에 선호 되는가 아니면 변수에 네트워크 포트를 저장할 때 UInt16을 선호합니까? UInt16이 실제로 유효한 값을 나타내지 만 프레임 워크 클래스는 네트워크 포트를 처리 할 때 int를 사용합니다.int 또는 UInt16을 사용해야합니까?
9
A
답변
8
서명 (int
/short
등 uint
/ushort
오히려 것을) 당신이 좋은 이유가없는 것을 권장하므로 CLS 규격하다는 장점이있다.
는 int
대 short
재 - 모든 운영이 최적화되어 있기 때문에 대부분의 경우, int
(또는 uint
)와 컴퓨팅에 더 효율적입니다. 저장하고 검색하는 경우 물론 이것은 문제가 아닙니다.
0
32 비트 프로세서를 사용하는 경우 16 비트 값 (메모리 절약 용)을 사용하면 32 비트로 정렬됩니다. 그래서 32 비트 값 대신에 16 비트 단위를 사용하는 것이 그렇게 중요하지 않다고 생각합니다.
+1
물론 배열을 제외하고. –
+0
네 맞아요. – tga
관련 문제
- 1. Graphics2D : int 또는 float 버전을 사용해야합니까?
- 2. MySQL에서 id/uuid (기본 키)에 int 또는 char을 사용해야합니까?
- 3. byte 또는 int를 사용해야합니까?
- 4. WCF 응답에 <int, int> 또는 int [] [] 반환
- 5. 정규식 INT 또는
- 6. 값 또는 키를 사용해야합니까?
- 7. WMI Win32_DiskDrive 기능 속성 - UInt16을 문자열로 변환
- 8. 상속 또는 구성을 사용해야합니까?
- 9. 포크 또는 스레드를 사용해야합니까?
- 10. CouchDB 또는 SimpleDB를 사용해야합니까?
- 11. AppDomain.CurrentDomain.BaseDirectory 또는 System.Environment.CurrentDirectory를 사용해야합니까?
- 12. ArrayList 또는 IList를 사용해야합니까?
- 13. em 또는 px를 사용해야합니까?
- 14. TNSNAMES.ORA 또는 tnsnames.ora를 사용해야합니까?
- 15. 리스너 또는 옵저버를 사용해야합니까?
- 16. DataInputStream 또는 BufferedInputStream을 사용해야합니까?
- 17. Pylons 또는 Pyramid를 사용해야합니까?
- 18. PHP 또는 ASP를 사용해야합니까?
- 19. 상속 또는 인터페이스를 사용해야합니까?
- 20. NSOperation 또는 NSRunLoop을 사용해야합니까?
- 21. MonoDroid 또는 Android를 사용해야합니까?
- 22. WPF 또는 SlimDX를 사용해야합니까?
- 23. msgsnd 또는 mq_send를 사용해야합니까?
- 24. mySQL에서 언제 "또는"를 사용해야합니까?
- 25. ReAllocHGlobal 또는 FreeHGlobal/AllocHGlobal을 사용해야합니까?
- 26. SQL 기본 키, INT 또는 GUID 또는 ..?
- 27. "int"또는 "string"클래스 만들기
- 28. NHibernate identity : int 또는 long
- 29. VB 또는 운영자 INT32와 INT
- 30. DWORD를 int 또는 uint에 매핑해야합니까?
서명되지 않은 유형이 2.0부터 시작하는 CLS 규격이라고 생각합니다. 내가 잘못 생각할 수 있기 때문에 내가 이것을 보았 기 때문에 오랜 시간을 보냈다. – JaredPar
@JaredPar - 기이하게도, 'ushort'는 경고를 발생시키지 않지만 'Unit'은 VS2008을 사용합니다 : "경고 인수 유형 'uint'는 CLS 규격이 아닙니다." –
@JaredPar - 또한 MSDN " 이 API는 CLS 규격이 아니며, CLS 호환 대체품은 Int32입니다. " http://msdn.microsoft.com/en-us/library/system.uint16.aspx (4.0 용) –