저는 C# 환경에 익숙하지 않아 잠시 동안 C++로 코딩했습니다. C#에서 포인터를 정확히 사용하는 위치는 어디입니까? C#에서 포인터를 사용하는 것이 좋습니다?C#에서 포인터는 어디에 사용됩니까?
답변
포인터는 사용할 수 있지만 "안전하지 않은"모드에서만 사용할 수 있습니다. 일반적인 C# 코딩에서는 사용하지 않습니다.
모든 클래스는 Object
에서 상속되며 "참조"유형이라고합니다. 이러한 유형은 참조에 의해 전달되며, 주로 후드 아래의 포인터이며 프로그래머의 주소와 같은 세부 정보는 숨 깁니다.
이들은 "포인터"이지만 C#의 모든 항목이 가비지 수집되고 개체 자체가있는 것처럼 액세스합니다 (아니요 -> 연산자).
int
, double
및 char
과 같은 유형은 값 유형으로 전달됩니다 (C++ 에서처럼). 참조로 전달할 수도 있지만 함수를 호출 할 때는 및의 함수에 ref
키워드를 사용해야합니다.
struct
은 "값"유형 인 다른 특별한 경우입니다. MSDN
구조체는 어떻습니까? 가치로 전달됩니까? – user2495173
@JonathonReinhart, 그것은 제가 준 것보다 훨씬 더 나은 설명입니다. 감사! 나는 그것을 사용하기 위해 나의 대답을 편집했다. – BradleyDotNET
@ user2495173, 구조체는 값 유형이며이를 포함하도록 편집됩니다. – BradleyDotNET
실제로 C#에서 포인터를 사용할 수있는 유일한 장소는 안전하지 않은 코드 영역으로 일반적으로 싫은 부분에 있습니다. 나머지 시간에는 런타임이 메모리를 관리합니다.
- 1. 포인터는 목표 C에서
- 2. dataTaskWithRequest 메서드는 어디에 사용됩니까?
- 3. 병렬 gc는 어디에 사용됩니까?
- 4. document.documentElement는 어디에 사용됩니까?
- 5. 배열은 어디에 사용됩니까?
- 6. 저장된 문자열에 대한 포인터는 어디에 있습니까
- 7. Windows Workflow Foundation은 어디에 사용됩니까?
- 8. 이들 sqlplus 열은 어디에 사용됩니까?
- 9. 메모리 관리 알고리즘은 어디에 사용됩니까?
- 10. 내 redis 클라이언트는 어디에 사용됩니까?
- 11. 요즘 jme/j2me는 어디에 사용됩니까?
- 12. FormsAuthentication에서 machineKey/validationKey는 어디에 사용됩니까?
- 13. 함수 포인터는 C에서 유해한 메소드를 시뮬레이트합니까?
- 14. 포인터는
- 15. 포인터는
- 16. 포인터는
- 17. 포인터는
- 18. javascript의 정규식 (정규식)은 어디에 사용됩니까?
- 19. 이 샘플에서 연산자 "<"는 어디에 사용됩니까?
- 20. Ebizmarts/MageMonkey/Block/Lists.php는 어디에 사용됩니까?
- 21. AndroidManifest.xml에 정의 된 로고는 어디에 사용됩니까?
- 22. 운영 체제 - 장기 스케줄러는 어디에 사용됩니까?
- 23. NSLog는 일반적인 용도로 사용됩니까? 오브젝티브 -C에서
- 24. 포인터는 C++
- 25. 설정 포인터는
- 26. 기능 포인터는,
- 27. 포인터는 ServiceHost를
- 28. 포인터는 다음
- 29. 허상 포인터는
- 30. Kibana는 어디에 유용합니까/어디에 유용합니까?
http://programmers.stackexchange.com/questions/24583/any-real-use-of-pointers-in-c –