• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

포인터 질문입니다.

23.11.28 17:34 작성 조회수 169

0

C#을 먼저 배웠고, 지금 C++을 배우고 있는 중에 궁금한 점이 생겨 질문 남깁니다.

 

  1. C#은 타입에 따른 값형식과 참조형식이 있다보니 매개변수로 전달하는 과정에서 자동으로 형식을 따라가서 값만 전달하는지 주소를 전달하는지가 결정이 되는데 때에 따라 값형식에 데이터를 수정하고 싶을 경우 ref 키워드를 통해서 수정을 하는데 이게 c++의 포인터와 동일하다고 생각하는게 맞을까요 ?

  2. C++ 개발자들의 역량 중 포인터를 다루는 정도가 항상 언급되는데, C#을 배우고 C++을 배우는 입장에서 아직 깊게 C++을 배운게 아니어서 그럴지 모르지만 C++의 포인터가 어느 부분에서 중요하게 사용되는지 잘 모르겠습니다. 1번에서 들었던 값형식의 데이터를 수정할 경우밖에 생각이 안나는데 혹시 중요하다고 매번 언급되는 만큼 게임개발에 있어서 사용하는 경우의 예시를 하나 들어주실 수 있을까요 ?

답변 1

답변을 작성해보세요.

0

  1. C# class = 항상 C++의 가 붙는다고 생각하시면 됩니다.
    C# 값형식에 ref를 붙이는 경우, C++의 & 참조와 유사합니다. (물론 포인터도 참조와 비슷한 개념입니다)

    2. C# class은 항상 참조지만 C++은 그렇지 않습니다.
    C++ class는 C#으로 치면 struct가 될 수도, class가 될 수도 있는거라
    포인터 유무에 따라 정말 많은 것이 달라지게 됩니다.

ji980207님의 프로필

ji980207

질문자

2023.11.30

이해됐습니다. 답글 감사합니다.