디시인사이드 갤러리

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

갤러리 본문 영역

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

발명도둑잡기(118.235) 2025.07.13 06:00:02
조회 91 추천 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/09/01 - -
AD 가전디지털, 신학기 페스타! 운영자 25/08/29 - -
2884817 보안전문가 <<--개발자보다 똑똑한거 맞음?? [1] 프갤러(1.213) 08.26 77 0
2884816 귀염 감수성이 높아야 한다 ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 89 0
2884815 헌혈 하면 안되는 이유 [5] 야옹아저씨갤로그로 이동합니다. 08.26 142 5
2884805 사내 프레임웤 쓰는 회사 많냐? [1] 프갤러(39.120) 08.26 85 0
2884803 에어컨을 켜놨는대도 뭔가 안시언 느낌? ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 81 0
2884799 '파이썬은 실행속도가 느려도 코드 작성이 빠르다' 프갤러(110.8) 08.26 87 0
2884798 파이썬은 왜케 좆구릴까 [3] 프갤러(106.101) 08.26 117 0
2884797 애플이 아패 로직,파컷을 구입이 아닌 구독제로 낸 이유 [1] ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 68 0
2884791 코린이의 코테분석 로갤러(118.235) 08.26 182 0
2884785 AI한테 따잇 당하기 싫으면 러스트Rust 해라 [4] 프갤러(211.235) 08.26 143 0
2884777 (개정)애널의달성 1./1//1 ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 92 0
2884776 웹앱땔깜련들은 욀케 깝치는지몰겠음 [2] 네오커헠(211.234) 08.26 155 1
2884775 러스트가 쓰레기인 이유 나르시갤로그로 이동합니다. 08.26 69 0
2884774 러스트 언어 진짜 꼴통같지 ㅋㅋ 나르시갤로그로 이동합니다. 08.26 74 0
2884773 확실히 엄마냥이 가장 위험에 민감한듯 ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 62 0
2884772 나님 프갤 오래했는데 아직도 프갤에 누구누구 있냐 하면 기억 안남 ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 69 0
2884771 러스트 언어 욕하니까 러빨러 완전 런했나보군 ㅎㅎ 나르시갤로그로 이동합니다. 08.26 52 0
2884768 AI가 웹앱목따고 윈도우임베 몰려올거생각하면 골치아프네 네오커헠(211.234) 08.26 81 0
2884766 찢재앙이 회담에서 쫓겨나듯 빤스런한 이유 ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 64 0
2884765 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥퇴마사냥덩♥갤로그로 이동합니다. 08.26 47 0
2884763 10년 이상 됐는데 어떻게 사람 모음? 프갤러(106.102) 08.26 64 0
2884762 씨발 2025, 2026년 한국 경제 개 암울하네 프갤러(121.129) 08.26 75 0
2884761 클로드코드보다 Codex Cli가 더 좋은 듯? 프갤러(112.217) 08.26 78 0
2884756 웹앱 vs 임베디드 [1] 프갤러(175.112) 08.26 111 0
2884753 5천만국민이 개처럼 노예짓하고 r&d예산 좇나 올려도 성장률 마이너스누 뒷통수한방(1.213) 08.26 57 1
2884752 문재인 섹스톤 보유국가인데 갱생이 가능하겠냐?? ㅋㅋㅋㅋ 타이밍뒷통수한방(1.213) 08.26 81 0
2884750 스트레스 존나 받는다 진짜 [2] 주아갤로그로 이동합니다. 08.26 110 0
2884748 싸울려면 뉴프로에서 싸워라 [4] 헬마스터갤로그로 이동합니다. 08.26 120 0
2884744 윈도우/임베 초고수 시니어개발자입니다만!? 나님. [1] 네오커헠(211.234) 08.26 137 0
2884740 [애니뉴스] 귀인환등초 인기가 갈리는 이유 분석 프갤러(121.172) 08.26 53 0
2884737 밥그릇 하나에 4만원인데 살까 말까 [2] 나르시갤로그로 이동합니다. 08.26 106 0
2884733 일베 뿌리가 전라도 아님?? 뒷통수한방(1.213) 08.26 65 0
2884730 국힘은 문재인 이준석때부터 떡상함 뒷통수한방(1.213) 08.26 59 0
2884727 러스트 컴파일러는 결함이 심각합니다. 나르시갤로그로 이동합니다. 08.26 72 0
2884726 러스트는 진보된 언어가 아닙니다 나르시갤로그로 이동합니다. 08.26 63 0
2884725 [대한민국] 트럼프 이재명 만남- 프갤러(121.172) 08.26 69 0
2884723 다음 글 예고) 러스트는 나르시시즘 언어입니다. 나르시갤로그로 이동합니다. 08.26 58 0
2884722 러빨러가 설칠 수록 러스트 쓰레기임이 더 퍼지죠 나르시갤로그로 이동합니다. 08.26 60 0
2884721 러스트 헬로월드가 nimf를 욕하는 수준은.. ㅎㅎ 나르시갤로그로 이동합니다. 08.26 63 0
2884720 헉 뭐지 사전과제 합격했었네… 꼬치의달인갤로그로 이동합니다. 08.26 83 0
2884719 러스트의 설계 결함: unsafe위에 세워진 safe 신화 나르시갤로그로 이동합니다. 08.26 64 0
2884718 러스트는 근본적으로 설계가 잘못되었습니다 나르시갤로그로 이동합니다. 08.26 84 1
2884716 유데미 강의 추천해주싈? ㅇㅇ(121.137) 08.26 636 0
2884715 러스트는 만들다만 언어입니다 나르시갤로그로 이동합니다. 08.26 66 0
2884714 국힘 좆병신 같은 새끼 뽑혔네 [4] 아스카영원히사랑해갤로그로 이동합니다. 08.26 149 0
2884711 되다만 똥같은 것들이 남 긁는걸 가지고 스스로 우월하다고 정신승리함. 프갤러(218.154) 08.26 73 0
2884710 확실히 한국애들이 잘 긁히는경향이 있음 ㅇㅇ(58.229) 08.26 77 0
2884705 러스트를 볼때마다 종이 빨대가 생각남 ㅇ.ㅇ(59.151) 08.26 83 0
2884703 1인 개발보다 그냥 사람모아서 창업하는게 나을텐데 [7] 네오커헠(121.157) 08.26 228 0
2884692 업워크 며칠째 일을 못받네 ㅆㅇㅆ(124.216) 08.26 73 0
뉴스 싸이, 수면제 대리 수령 논란... 소속사 "명백한 과오" 디시트렌드 08.29
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2