inflearn logo
강의

講義

知識共有

[C#とUnityで作るMMORPGゲーム開発シリーズ] Part4:ゲームサーバー

강의와 상관없는 c++ 질문입니다.

解決済みの質問

316

poiqwe

投稿した質問数 8

0

안녕하세요

좋은강의 만들어주셔서 감사합니다.

강의와 전혀 상관없지만 질문할 곳이 없어서 여쭤봅니다.

c++ 11에서 나왔다고 하는 Type&& , rvalue 참조가 뭔지 이해를 못하겠습니다.

어떤용도로 왜사용하는지, Type&와 무슨차이가 있는지 알고 싶습니다.

C# unity network

回答 5

0

Rookiss

오른값 참조는 좀 특별한 케이스라서
어셈블리에서 꼭 어떻게 동작한다고 하기 어렵고,
그냥 C++에서 정의하는 move semantics를 만족하기 위해
컴파일러가 수단과 방법을 가리지 않는다(?)
정도로 이해하는 것이 맞을 것 같네요.

물론 어셈블리에서 오른값 참조의 개념도 존재하지 않는 것은 마찬가지이고,
필요하다면 주소값을 넘겨야하는 것은 동일합니다.
그리고 중간 복사를 생략하기 위한 코드를 생성하는 등
더 포괄적인 전략이 들어가야 할 것 같네요.

0

poiqwe

그럼 Type&&는 어셈블리에서 다르게 작동하게 되는건가요?

0

Rookiss

[원본 닉네임으로 복사없이 넘긴다]는
C++ 관점에서 보면 맞는 비유지만,
어차피 어셈블리로 넘어가면 [닉네임을 넘긴다]는 개념은 존재하지 않습니다.
분석하면 결국 포인터와 마찬가지로 주소값을 넘겨서 작동합니다.

0

poiqwe

저는 지금까지 Type&가 원본 닉네임으로 복사없이 넘긴다로 알고있었는데
Type&도 주소 전달이었군요
감사합니다.

0

Rookiss

일반 참조 Type&는 사실상 포인터랑 같은 개념이고,
어떤 객체의 주소를 넘기는 것입니다.
오른값 참조 Type&&는 C++11에서 새로 생긴 개념인데
'복사하지 않고 원본 자체를 넘긴다(?)'고 비유할 수 있습니다.
이걸 쓰는 이유는 그냥 성능 향상 때문에 그런데
자세하게 설명하기에는 너무나도 내용이 방대해
잘 설명된 블로그들을 참조 바랍니다.

https://modoocode.com/189

추가로 Effective Modern C++ 책 초반부터에서도 해당 내용이 나오는데,
어느 회사를 가도 신입 교육은 저 책으로 하니
미리 살펴보면 좋습니다.

TLS 질문드립니다.

0

38

2

SpinLock과 컨텍스트스위칭에 대해 질문 남겨요.

0

45

2

Unity Span

0

71

2

XML, Dll 차이점

0

102

2

Session 질문입니다

0

78

1

Write Read 커서 키워드

0

72

1

더미 클라이언트 수에 따른 OnDisconnect 발생

0

68

2

네트워크 Send 전담 스레드 배치

0

97

2

UnhandledException 으로 서버 터지는 경우

0

84

2

컨텐츠 단, 엔진 단

0

103

1

질문 있습니다

0

76

2

C# 게임서버 3D MMORPG

0

143

2

유니티6 버전

0

96

2

receive하는 부분과 send하는 부분의 차이

0

132

2

커서의 위치의 중요성

0

102

2

C++ 전혀 모르는데 C# 서버

0

168

2

강의에 질문이 있습니다

0

85

2

멀티스레드 이해도 질문

0

94

1

500 vs 500

0

125

3

OnAcceptHandler 액션 함수

0

60

1

이 정도 서버의 객관적인 수준이 궁금합니다.

0

187

2

36. Serialization #3 에서 string (name) 코드 수정 질문

0

81

2

외부 컴퓨터와의 통신 방법이 궁금합니다

0

104

1

스핀락 질문.

0

107

2