이름, 길이 및 비용의 몇 가지 데이터 멤버 만 추적하는 간단한 Movie 객체가 있다고 가정 해 보겠습니다.C++ 객체 생성 및 메모리 할당
내 드라이버 파일에 Movie 객체를 만드는 경우. 어떤 선호와의 차이 :
Movie firstMovie = Movie("Titanic", 126, 13.2);
및
Movie* firstMovie = new Movie("Titanic", 126, 13.2);
우리가에 있던 방법이 될 것 인 경우에이 개체에 액세스 할 필요가있을 것 인 경우에 나는 후자라고 생각
완료되었습니다. 즉, 생성 된 첫 번째 객체가 메소드 에서처럼 초기화되면 일단 메소드가 실행되면 메모리가 할당되지 않아 연결이 끊어집니다. 내 사고 방식이 맞습니까? 이것은 숙제가 아니며 자바에서 전환 한 이후에 숨어있는 질문이 더 많습니다. 고맙습니다.
두 번째 코드는'Movie * firstMovie = new Movie ("Titanic", 126, 13.2);'로 컴파일해야합니다. – PlasmaPower
감사합니다. 그 변경 사항을 수정하겠습니다. –
첫 번째 스택에 할당됩니다. 두 번째 것은 힙을 통해 할당됩니다. 힙을 통해 할당 한 경우 수동으로 삭제해야합니다. 스택 오버하면 삭제가 자동으로 수행됩니다. – Sumeet