디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

D 언어 메모리 실수앱에서 작성

발명도둑잡기(118.235) 2025.07.13 06:00:02
조회 62 추천 0 댓글 1

좋은 질문입니다.
D 언어는 C/C++ 계열 언어지만, 가비지 콜렉션(GC)과 수동 메모리 관리 둘 다 가능혼합형 시스템 언어입니다.

✅ 요약

D 언어는 기본적으로 가비지 콜렉션이 내장되어 있지만,
수동 메모리 관리도 가능하고, GC를 완전히 끌 수도 있습니다.
즉, C보다 메모리 관리가 훨씬 안전하고 유연합니다.

D 언어의 메모리 관리 방식 요약

방식가능 여부설명✅ 가비지 콜렉션(GC)기본기본 new/delete는 GC 기반으로 작동✅ 수동 메모리 관리가능malloc/free, core.memory.GC 제어 가능✅ GC 비활성화가능@nogc 함수나 전체 프로그램 단위로 GC 사용 안 함✅ RAII 지원있음C++처럼 생성자/소멸자 기반 자원 해제 가능✅ 스코프 기반 해제(scope)있음scope 키워드로 자동 해제 유도✅ 스마트 포인터있음RefCounted, Unique 등 제공

기본 예시: GC 사용

class Foo { int[] data; } void main() { auto f = new Foo(); // GC로 할당 }

수동 할당 예시 (C 스타일)

import core.stdc.stdlib; void main() { int* p = cast(int*) malloc(int.sizeof * 10); // ... free(p); // 수동 해제 }

@nogc 함수 예시

@nogc void fastFunc() { // GC 사용 불가 → 안전하고 빠르게 동작 }

@nogc는 함수 내부에서 GC를 사용할 수 없도록 강제합니다.

컴파일러가 GC 사용 여부를 정적으로 검사합니다.

scope 변수 (스택 해제 자동)

void main() { scope(exit) writeln("Leaving scope"); // 스코프 끝날 때 실행 }

RAII 스타일 코딩이 가능해, 누수 위험이 적음.

D 언어가 C보다 실수를 줄이는 이유

항목D 언어C 언어GC 기본 제공✅❌RAII / 소멸자 지원✅❌@safe / @nogc 체크✅ 정적 검사❌ 없음Nullable 포인터 구분부분적❌ 없음범위 기반 해제 (scope)✅❌소멸자 자동 호출✅ 클래스/struct 지원❌ 수동스마트 포인터✅ 표준 제공❌ 없음

⚠+ 주의점

D의 GC는 정확하고 일관되지만, 실시간 시스템이나 임베디드에는 부적합할 수 있음.

D는 C처럼 완전히 낮은 수준의 수동 관리도 가능하지만, 퍼포먼스 민감한 코드에서는 신중한 설계 필요.

결론

D는 메모리 관리에 있어서 "유연성과 안전성" 모두를 추구하는 언어입니다.

C보다 실수를 덜 하게 설계되었으며,

필요하면 완전 수동 관리,

기본적으로는 GC 기반 자동 관리,

@nogc, scope, RAII, 스마트 포인터 등 다양한 도구로 메모리 버그를 줄일 수 있는 환경을 제공합니다.

원하신다면 @nogc, RAII, 또는 GC-free 구조로 D로 작성된 예제도 만들어 드릴게요.


"도둑은 집을 떠나며 주인을 욕한다" - 러시아 속담
송대관-해뜰날
https://youtu.be/DUsVXmywSCk

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 탈모 걱정 없어 보이는 머리숱 금수저 스타는? 운영자 25/07/14 - -
AD 휴대폰 액세서리 SALE 운영자 25/07/15 - -
2871620 아래 한글 사용 자제합시다 [1] 재현갤로그로 이동합니다. 07.14 53 0
2871618 감히 화장실에서 통화를해? ㅋㅋ 개멍청한유라갤로그로 이동합니다. 07.14 46 0
2871617 에러로그 봐도 원인파악이 안됨 ㅇㅇ(211.234) 07.14 39 0
2871615 effective modern c++ 번역본 개 구데기임? ㅇㅇ(218.235) 07.14 32 0
2871614 옆에서 일하는 사람 상당히 거슬림 [2] ㅇㅇ(211.234) 07.14 68 0
2871612 일을 존나 빠르게 처리해줘도 [4] 아스카영원히사랑해갤로그로 이동합니다. 07.14 84 0
2871611 개발자 채용할때 어디에 올리는게 효과적임? [2] 프갤러(106.240) 07.14 62 0
2871610 30년 된 라면 발명도둑잡기(39.7) 07.14 44 1
2871609 Ada가 나중에 Go도 따먹고 JS 다음 순위 먹겠구만 루비갤로그로 이동합니다. 07.14 44 0
2871608 Ada: GC없이 메모리 세이프 보장하는 언어 중 1위 루비갤로그로 이동합니다. 07.14 45 0
2871607 Ada 언어 순위 9위면 빨리 공부해야 되는가요? [1] 루비갤로그로 이동합니다. 07.14 43 0
2871606 러스팅 소울, 8장: 그림자의 춤 (마지막회) 루비갤로그로 이동합니다. 07.14 30 0
2871605 콘솔 입력기 아키텍처 및 상세 이벤트 흐름 루비갤로그로 이동합니다. 07.14 39 0
2871604 닐슨코리아에서 한 달쯤 전엔가 미디어 시청 관련 자동응답 와서 발명도둑잡기(39.7) 07.14 32 0
2871603 회사일 특 [10] 프갤러(73.25) 07.14 76 0
2871602 c와 c++의 차이점 - include [1] ㅇㅇ(118.235) 07.14 95 2
2871601 오늘 유행하는 좋은 말도 배우고 배구공(119.202) 07.14 47 0
2871600 조선은 병역거부 가능하고 대학생은 군대 안감 발명도둑잡기(39.7) 07.14 43 0
2871599 버스 전광판에 여유 발명도둑잡기(39.7) 07.14 38 0
2871598 니 쫄았제? [1] ♥지나가던길냥덩♥갤로그로 이동합니다. 07.14 54 0
2871597 북좇센에태어나면 군복무 10년 실화냐?? [1] 뒷통수한방(1.213) 07.14 45 0
2871595 잠오노 [1] 루도그담당(211.184) 07.14 36 0
2871594 딴짓거리 말고 국비 6개월 자바배우고 취업해라 [1] 프갤러(167.172) 07.14 174 2
2871593 씹센징이 뭐지... [9] 배구공(119.202) 07.14 67 0
2871592 Ai 등장이후로 흥미도 떨어지고, 점점 도태 되는 중 [2] 무한탐구(218.234) 07.14 76 1
2871591 중국 사대주의 새끼들 프갤러(223.39) 07.14 41 0
2871590 이적 "30년 음악해도 '연예인' 느낌 안 들어 발명도둑잡기갤로그로 이동합니다. 07.14 43 0
2871589 PL이 무섭다 [4] 개멍청한유라갤로그로 이동합니다. 07.14 76 0
2871588 힙합 갤러리에서도 심리공작하는 친미극우 공작원 106.101 발명도둑잡기(118.216) 07.14 53 0
2871587 과연 회사들이 개발을 해야되서 하는걸까? [1] 프갤러(183.101) 07.14 63 1
2871586 인공지능 나오고 난 뒤부터 모드 활렵소가 사라짐 무한탐구(218.234) 07.14 47 1
2871584 ❤✨☀⭐⚡☘♥+나님 시작합니당♥+☘⚡⭐☀✨❤ [3] ♥지나가던길냥덩♥갤로그로 이동합니다. 07.14 39 0
2871583 미국 비자 심사에 SNS 계정과 음주운전 전과도 본다 발명도둑잡기(118.216) 07.14 38 0
2871582 인공지능 쓰면, 게임도 하루만에 뚝딱이네 무한탐구(218.234) 07.14 64 1
2871581 아빠의 아재개그는 자녀 정서의 도움이 된다 발명도둑잡기(118.216) 07.14 32 0
2871580 진정한 개발자가 되는 꿈을 꿨음 [6] 공기역학갤로그로 이동합니다. 07.14 105 2
2871579 노멀 아반떼 신형 렌트 받음.jpg [2] 야옹아저씨갤로그로 이동합니다. 07.14 64 0
2871578 출근했는데.. 일이 없음 [1] 프갤러(1.235) 07.14 56 0
2871577 또 싸우냐 병신들아 [4] 아스카영원히사랑해갤로그로 이동합니다. 07.14 80 0
2871576 일본을 따라잡기는 커녕 현실은 중국에 추월당한 한국 [5] 발명도둑잡기(118.216) 07.14 63 0
2871575 ❤✨☀⭐⚡☘♥+나님 시작합니당♥+☘⚡⭐☀✨❤ [2] ♥지나가던길냥덩♥갤로그로 이동합니다. 07.14 54 0
2871574 오늘도 평화로운 프갤 [4] 루도그담당(211.184) 07.14 75 0
2871573 멍유야 니가 잘못함. 자꾸 냥덩이랑 친한척해주니까 [9] ㅆㅇㅆ(124.216) 07.14 94 0
2871572 냥덩아 그리고 보빨할거면 제대로 해라 뭔 씨발 은근슬쩍 [2] ㅆㅇㅆ(124.216) 07.14 59 0
2871571 점마는 아카이브 링크때문에 냥덩이라 하는 줄아나 [5] ㅆㅇㅆ(124.216) 07.14 62 0
2871570 냥덩이 저새끼 진짜 8개월째 따라다니는거 신기하긴함 [2] ㅆㅇㅆ(124.216) 07.14 53 0
2871569 그리고 저 병신새끼 존나 웃긴게 지가 걸었던 링크가 [6] ㅆㅇㅆ찡갤로그로 이동합니다. 07.14 64 1
2871568 걍 냥덩이일수밖에 없는게 똑같은 말 반복하는게 똑같음 [2] ㅆㅇㅆ찡갤로그로 이동합니다. 07.14 51 0
2871567 멀티스레드 사용시 주의사항 읽어보면 매우 재밌을것.. [1] ㅇㅇ(118.235) 07.14 49 0
2871566 냥덩이 유동 또 저격하냐. 애초에 레파토리가 뻔한데 [7] ㅆㅇㅆ찡갤로그로 이동합니다. 07.14 65 0
뉴스 ‘남겨서 뭐하게’ 부여 미식투어 2탄! 조현재-정일우-이연복-오세득, ‘왕들의 밥상’ 미식 투어 디시트렌드 07.17
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2