C#은 포인터를 지원하지 않아서 메모리 세이프를 할 수 있다는것이다.
그런데 포인터를 쓸 수는 있기는하다.
IntPtr, unsafe 를 쓰면 된다. (얼마나 메모리 세이프를 하고싶었으면 포인터 이름도 unsafe)
언어적 성격이 보여서 신기하다.
C#이 고집하는 장점을 가져가면 좋겠지만, 언젠가 꼭 써야 하는 경우에 기술자로써 어버버 하고 싶지는 않으니 사용법을 곰부해 두고는 싶다.
기술면접때마다 "사용하신 언어의 특징은 뭔가요?" 하는 질문을 자주 받았는데, 생각보다 대답하기 어려웠다. 나는 바텀업으로 학습한 언어가 C밖에 없어서 더 대답하기 난처했던 것 같다. 모쪼록 지금은 대답할 수 있게는 되었지만 더 공부가 필요하다.
C#의 장점
1. 가비지 컬렉터가 동작한다.
2. 포인터를 지양하여 메모리 세이프를 지향한다.
의문점
- c#의 오브젝트들은 값 타입 아니면 레퍼런스 타입이잖아, 포인터와 참조 타입의 차이는 뭐지
'Server > C#' 카테고리의 다른 글
딕셔너리 vs 해시테이블 (2) | 2023.11.28 |
---|---|
진짜 오랫동안 삽질했던, 프로그램 비정상 종료 대처법 (0) | 2023.10.11 |
정확하게 코딩했는지 확인하자! 나의 프로그램 테스트 방법 (0) | 2023.07.18 |
[C#] out of range 에러에 대처하는 천재적인 방법 (0) | 2023.07.04 |
[C#] ??= (0) | 2023.06.20 |