inflearn logo
강의

講義

知識共有

C++とUnrealで作るMMORPGゲーム開発シリーズ Part1: C++プログラミング入門

タイプ変換#3

동적할당과 배열

373

fbghwls1213

投稿した質問数 5

0

동적할당과 배열 질문 입니다.

int형의 경우

int* ptr = new int[100];

delete[] ptr; 

이렇게 동작하는 것으로 이해하고 있습니다. 

class의 경우 강사님께서

Item* item4[100] = {};

for (int i = 0; i<100; i++)

{

item4[i] =  new Item();

}

이렇게 두단계로 나눠서 먼저 포인터 배열을 생성하고 반복문을 돌려서 하나씩 동적할당을 해주는 식으로 설명해주셨는데

Item* item5 = new Item[100]

이런 방식으로는 할 수 없는 건가요?

C++

回答 2

0

unreal12341234

위의 질문에서 힙 공간의 생성되는 객체들의 메모리 구조는 다르다고 이해하는게 맞을까요?

강의의 방식인 item4는 각각 힙 공간에 랜덤하게 떨어져서 잡히게 될 수 있는데, 반면에 질문자의 item5는 item이 힙 공간에 예쁘게 순서대로 붙어서 잡히는걸로 생각됩니다.

그래서 결국 힙 메모리에 생성되는 형태가 다르다고 이해하고 있는데 맞나요?

0

Rookiss

네 그것도 맞습니다.

0

Rookiss

둘다 되고 그냥 방식이 다른겁니다.
전자는 [(포인터의) 배열]이고 후자는 [동적으로 생성한 배열]을 이용한 것이죠.
그런데 어차피 배열은 잘 쓰지 않고
나중에 가면 vector와 같은 container를 사용하니 그냥 대충 넘어가셔도 됩니다.

visualstudio에서 파일분할관리실습시 설정 문의를 드립니다.

0

543

1

정렬함수 좀 더 확실하게 이해 할 방법이 있을까요?

0

444

1

strcpy() 구현 관련 질문

0

514

1

빌드(망치)를 누르니 이런 오류가 떴습니다. 어떻게 해야 하나요?

0

454

1

클래스 타입의 포인터 질문합니다

0

548

1

입력값을 enum 값에 넣어주는거 이제 막혔나요?

0

500

1

템플릿 특수화 관련 질문

0

386

1

포인터 관련 질문합니다!

0

267

1

Unable to start assembler. Check your settings.

0

833

2

cpu선택

0

542

1

포인터 질문이 있습니다

0

326

1

20:35 에서 구조체 크기에 대한 질문입니다!

0

587

1

iterator 삭제관련

0

409

1

함수 호출을 디스어셈블러로 분석하다가 궁금점이 생겼습니다!

0

313

1

15 분 45초 대 질문

0

311

0

스택 프레임 질문합니다!

2

307

1

오른값 참조 in 게임

0

385

0

동적할당 질문이 있습니다

0

452

1

안녕하세요 메모리에 대해 질문드립니다.

0

306

1

함수객체 의 매개변수

0

362

1

복사생성자

0

437

1

main이나 endl 부분이 주황색으로 표시된건 어떻게 하나요

0

422

1

포인터 실습 강의를 보고 궁금한게 있습니다.

0

357

1

스택 오버플로우

2

792

1