C++ 에서 구조체와 클래스의 차이
접근 지시자의 차이
구조체 (struct) 의 경우
기본적인 접근 지정자가 public 이고
클래스 (class) 의 경우
기본적인 접근 지정자가 private 이다.
그 이외의 기능들은 c++에서는 동일하게 사용가능하다.
(함수선언 정의, 생성자 소멸자, 상속 등등)
C# 에서 구조체와 클래스의 차이
타입의 차이
구조체(struct)의 경우
스택 메모리에 생성 되고
클래스(class)의 경우
힙 메모리에 생성된다.
구조체는 스택에 할당되어 가비지컬렉션이 발생하지않고
클래스는 힙에 할당되어 가비지지컬렉션이 발생하므로 속도면에서 구조체가 유리하며
크기가 클 경우 클래스는 주소 값만 저장하는 반면
구조체는 스택에 모두 저장하기 때문에 스택 오버플로우가 발생할 수 있다.
'프로그래밍 공부 > 궁금한 정보들' 카테고리의 다른 글
용어 정리 (0) | 2022.02.17 |
---|---|
if(!) if문 안에 !의 의미 (0) | 2022.02.14 |
문자열 _T 매크로, C++ 리터럴이란 (0) | 2018.01.04 |
가변인자 함수 (0) | 2018.01.03 |
동적 메모리 할당 (0) | 2016.02.18 |