inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[하루 10분|C++] 누구나 쉽게 배우는 C++ 프로그래밍 입문

추상화와 클래스

추상화와 클래스편에서요

250

쿠로로

작성한 질문수 1

0

main함수에서

Stock temp; 로 선언을 했는데

Stock *temp; 로 선언하는 것과의 차이는 무엇인가요?

어떤 경우에 위처럼 하는지 아래처럼 하는지 궁금합니다

 

c++

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요.

Stock temp; 와 Stock *temp;의 차이는 변수의 선언 방식에 있습니다.

Stock temp;는 Stock 클래스의 객체인 temp를 선언하는 것으로, temp는 Stock 클래스의 멤버에 직접 접근할 수 있는 인스턴스입니다. 이 경우 temp는 스택 메모리에 할당되며, 객체가 생성될 때 클래스의 생성자가 호출됩니다.

Stock *temp;는 Stock 포인터 변수 temp를 선언하는 것으로, temp가 Stock 클래스의 객체를 가리키는 포인터입니다. 이 경우 temp는 힙 메모리에 할당된 Stock 객체를 가리킬 수 있습니다. 객체 생성은 별도의 동적 할당을 통해 수행하며, delete 연산자를 사용하여 메모리를 해제해야 합니다.

따라서, Stock temp;는 객체를 값으로 가질 때 사용하고, Stock *temp;는 객체를 포인터로 가리킬 때 사용합니다. 어떤 방식을 선택하는지는 상황에 따라 다르며, 객체의 크기나 생명 주기에 따라 결정될 수 있습니다.

자세한 내용이나 예시 코드가 필요하시다면 추가로 알려주세요. 좋은 공부 되세요!

switch 구문과 break continue 구문 강의 질문드립니다

0

60

1

opreator*

0

77

1

cin은 c언어에서의 scanf와 동일하다고 봐도 될까요?

0

140

0

질문이 있습니다.

0

109

1

temp1 선언

0

91

1

const MyStruct& 사용

0

114

0

인트형 포인터의 사이즈가 8이 나옵니다.

0

218

1

MyStruct* temp = new MyStruct; 에서 temp도 delete를 해야하나요?

0

128

1

#include <iostream> 중복

0

155

1

int sum=sumArr(arr. SIZE) 문의

0

137

1

4:04질문입니다.

0

111

1

4:39 질문입니다.

0

130

1

질문있습니다.

0

105

1

질문있습니다.

0

108

1

9:11 b에는 a이 주소값이 들어갔다고 하는데 *b의 값이 왜 a랑 같은 값이 나오나요?

0

163

1

빌드 실패 오류 질문 드립니다!

0

397

1

추상화와 클래스중 질문

0

176

1

질문사항 있습니다..동작을 안하고 있어요..

0

340

2

질문 드립니다

0

188

1

함수와 구조체 강의 음성이 이상합니다.

0

200

1

분할 컴파일 과정에서의 오류 발생

0

606

2

<<, >> 비트 연산자에 대한 설명이 맞나요?

0

451

2

포인터 연산

0

390

2

비주얼 스튜디오 코드를 사용해도 되나요?

0

805

1