C언어에서 이러한 메모리 문제를 어떻게 해결해야 할까?
결론부터 말하자면, 아쉽게도 답이 없다.
C는 필연적으로 이러한 오류를 발생시킬수 밖에 없는 구조이다.
예리한 칼을 개발자에게 쥐어졌으니, 개발자가 조심해 하면서 사용하는 수밖에 없다.
애시당초 칼을 쥐어주지 않으면 되는거 아닌가요?
이는 C의 철학에 위배된다.
가급적 스택에서 만들어
Heap에다 만들면 개발자가 알아서 잘 delete 하는 수밖에 없다.
C++은 C의 위와 같은 문제에 대한 솔류션으로 아래와 같은 솔류션을 제공한다.