inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

복사와 참조

140

김원태

작성한 질문수 27

0

강사님 안녕하세요.

c++에서는 매개변수를 참조(포인터)냐 지역으로 어떻게 처리하냐에 따라서 출력결과 값이 달라지는데 

c#에서는 클래스를 동적할당 하기만 하면 매개변수로 들어갈시 컴파일러가 알아서

매개변수를 참조하는 용도로 변경하나요?

//c++코드 

class Knight

{

public:

int hp;

};

void Kill_knight1(Knight knight)

{

knight.hp = 0;

}

void Kill_knight2(Knight& knight)

{

knight.hp = 0;

}

void Kill_knight3(Knight* knight)

{

knight->hp = 0;

}

int main() {

Knight knight;

knight.hp = 100;

Kill_knight1(knight);

cout << "지역 처리" << endl;

cout << knight.hp << endl;

Kill_knight2(knight);

cout << "참조 처리" << endl;

cout << knight.hp << endl;

Knight* knight_alloc = new Knight();

Kill_knight3(knight_alloc);

cout<<"포인터처리" <<endl;

cout << knight_alloc->hp << endl;

return 0;

}

C#

답변 1

0

Rookiss

이전 질문과 동일하므로 링크로 대체합니다.
https://www.inflearn.com/questions/109300

C#에서 class Knight를 사용하면
C++ 기준으로  Knight* 과 같은 포인터(즉 주소값)를
사용하는 것과 동일하게 동작한다!

로 기억해주시면 편합니다.

Generic에 대한 질문 있습니다.

0

97

2

2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?

0

203

2

다형성 캐시 문제

0

113

3

.

0

71

1

프로퍼티 강의 질문 있습니다.

0

79

1

이후 커리 질문

0

86

1

static

0

91

2

강의에는 새로운 클래스 파일을 생성하면...

0

72

1

생성자의 이름 선언

0

65

1

9:03 Divide(10 , 3) 부분 질문입니다

0

88

1

깃허브 관련 질문 있습니다.

0

239

1

비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문

0

249

1

C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!

0

306

2

Activator 질문있습니다

0

332

1

이넘 타임 선언 질문

0

347

1

Sort 오름차순, 내림차순

0

323

1

질문 있습니다.

0

249

1

팩토리얼 문제

0

270

1

Sort함수 질문있습니다.

0

265

1

다형성 함수 질문 있습니다.

0

221

1

질문이 있습니다.

0

228

1

섹션2 연습문제 질문입니다.

0

214

1

안녕하세요~서버에 대해 질문이 있습니다.

1

283

1

텍스트 색깔이 제 편집기와 달라서 수강에 어려움이 있습니다ㅜㅜ

0

395

1