728x90
C#과 C++간의 가장 중요한 차이점은 메모리 관리
메모리 할당/해제 | 플랫폼 지원 | 구문 | |
C | malloc, free 사용 프로그래머가 메모리 수동으로 관리해야 하기 때문에 많은 메모리누수 |
||
C++ | new, delete로 직접 할당, 해제 스마트포인터를 사용해 자동으로 할당, 해제로 진화하였지만 여전히 순환참조 같은 특정 상황에서 메모리 누수 |
특정 하드웨어 및 운영체제에 맞게 컴파일할 수 있는 네이티브 언어 | C와 유사한 구문을 사용하는 저수준 언어 |
C# | 가비지 콜렉터를 채택 오버헤드가 있어 시스템이 바쁘게 돌아가고 있을때 GC가 실행되면 시스템에 장애 |
여러 운영체제에서 공통 런타임 환경을 제공하는 .NET플랫폼에서 사용 | Java와 유사한 구분을 사용하는 고수준 언어 |
C#은 C++보다 느릴까?
728x90
'CS > ETC' 카테고리의 다른 글
순수 가상함수, 일반 가상함수 (0) | 2023.12.19 |
---|---|
FSM(Finite-state machine) (0) | 2023.12.19 |
OOP(Object-oriented programming) (0) | 2023.12.19 |
Call by Value Vs Call by Reference (0) | 2023.10.01 |
추상클래스와 interface 차이 (용도차이) (0) | 2023.09.27 |