메뉴 건너뛰기

창작에 관련된 질문이나 간단한 팁, 예제를 올리는 곳

밑에 대슬님 질문 보니까
멤버변수를 등록할때 동적할당을 하는게 씌여 있는데
그냥 Cogg m_ogg_oggplayer;
이런식으로 그냥 일반변수로 등록을 하고 사용할순 없나요?
동적할당을 굳이 써야하는지 ㅡ.ㅡ;;
(개인적으로 4바이트 추가와 잘못되면 메모리 누수가 되서 잘 안쓰는편)
조회 수 :
3710
등록일 :
2008.06.29
20:30:33 (*.50.69.16)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=study&document_srl=214968

똥똥배

2008.06.29
21:55:02
(*.193.78.136)

COgg는 생성자에서 DirectSound 객체를 요구합니다.
하지만 DirectSound 객체가 동적으로 프로그램 초기화 과정에서 생성되기 때문에
COgg 역시 DirectSound가 생성된 다음에 동적으로 생성해 줘야 하는 겁니다.

그리고 처음부터 구조적으로 잘 짜면 메모리 누수는 걱정할 필요 없습니다.
정적 할당과 동적 할당 할 때를 효율적으로 판단하고 자유롭게 쓸 수 있어야 고급 프로그래머라 할 수 있지요.

A.미스릴

2008.07.01
06:02:59
(*.50.69.16)

추가로 OpenOgg로 불러온 Ogg를 다시 Close하는 함수가 ReleaseOgg인가요?
아니면 따로 Close하지 않아도 오픈을 한 상태에서 다른 Ogg파일을 Open할 수 있나요?

똥똥배

2008.07.01
18:13:45
(*.239.144.2)
Ogg의 재생을 멈추는 함수는 StopOgg입니다.
ReleaseOgg는 불러온 Ogg를 해체하는 함수지요.
아마 안정적으로 하려면 Stop한 후 Release하는 것이 순서일 듯.
바로 Release해도 되는지는 잘 기억이 안 나지만 일단 안정성면에서는 Stop->Release로 해주시길.
바로 Open할 경우의 처리도 코드상에서 처리되어 있지만 역시 안정성을 생각하는 게 좋겠지요.

참고로 Ogg 경우 상당한 메모리를 먹기 때문에 5분 이하의 Ogg를 재생하길 권장합니다.
하나 덧붙여 Open할 경우 Ogg를 Wav로 변환하는 처리를 하기 때문에 약간 딜레이가 생깁니다.
끊김없이 재생하기 위해서는 화면이 바뀌는 순간에 데이터를 읽고 재생하는 것이 좋습니다.
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
165 멘탈붕괴의 절정을 부르는 파일입출력 노루발 2013-09-17 273
164 [Lua] Split 노루발 2013-09-17 361
163 Love2d 게임 중간에 광고 표시 [1] 노루발 2015-11-12 377
162 김프로 이미지 맵 만들기 노루발 2015-11-11 393
161 PHP로 웹게임 만드는 영상 [1] 노루발 2021-06-25 395
160 love.graphics.print 한국어 출력 노루발 2013-09-17 431
159 턴 기반 시스템 구현에 대한 글 [4] 노루발 2020-11-14 440
158 cocos2d-x CCMenuItem 자신을 지웠을 때 생기는 에러 똥똥배 2013-09-13 442
157 Love2D를 사용하기 위한 Lua 강좌: 변수형 노루발 2013-09-17 446
156 [Love2D] 일단 뭔가 해보자 노루발 2013-09-17 457
155 Love2D? 개요, 설치, 실행. 노루발 2013-09-17 464
154 Love2d 여러 플랫폼으로 빌드 자동화 노루발 2014-11-12 470
153 cocos2d-x에서 schedule_selector 정의 변화 [1] 똥똥배 2013-08-19 521
152 Love2D: 콜백 함수들 노루발 2013-09-17 538
151 cocos2d-x 게임을 iOS에 이식할 때 생기는 문제들 똥똥배 2013-08-26 543
150 Love2d 안드로이드 게임 패키징하기 [3] 노루발 2014-12-15 546
149 Love2d 안드로이드 빌드하기 노루발 2014-12-15 572
148 구글 인앱 구매 Soomla로 구현해본 후 팁 똥똥배 2014-09-20 577
147 Love2D를 사용하기 위한 Lua 강좌: 코딩 스타일, 변수 노루발 2013-09-17 585
146 소코반: 맵을 초기화하자. 노루발 2013-09-17 588