https://docs.microsoft.com/ko-kr/cpp/cpp/classes-and-structs-cpp?view=msvc-170
클래스 및 구조체(C++)
클래스 및 구조체에 대해 자세히 알아보기(C++)
docs.microsoft.com
https://k96-ozon.tistory.com/31
C++ CLASS(클래스) 정의와 struct(구조체)와 차이
안녕하세요! 공대남입니다. C언어부터 공부하시고 C++를 하시는 분들은 클래스를 처음 접하실 것 입니다. (객체지향언어를 처음 하신다면) 객체지향언어에서는 클래스와 객체가 중요한 개념입니
k96-ozon.tistory.com
C++ : 구조체에서는 기본 접근성이 public, 클래스에서는 기본 접근성이 private이다.
C#
1. 클래스는 힙 영역에 할당 되지만, 구조체는 스택 영역에 할당된다.(반드시 그러한 것은 아니다.)
- 힙은 런타임에 확보되는 영역이므로 new등을 이용하여 가변적으로 할당되어 delete나 가비지콜렉션 등의 메모리 관리가 필요하다.
- 스택은 컴파일 시점에 결정되는 영역으로 지역 변수 등이 저장되며 함수가 종료되는 시점에 자동으로 정리된다.
* 구조체 내에 클래스를 멤버 변수로 선언할 경우 해당 구조체는 클래스 처럼 힙 영역에 할당 되는 점을 주의해야 한다.
2. 클래스는 참조 타입, 구조체는 값 타입니다.
- 클래스는 멤버 변수의 값을 변경하면 원본도 변경되지만, 구조체는 함수를 호출해서 전달하면 원본과 다른 복사본이 생성된다.
3. 구조체는 클래스와 달리 상속이 불가능하다. (C++에서는 구조체 상속이 가능하다.)
4. 구조체는 기본 접근제한자가 public, 클래스는 private이다.
- 클래스 보다는 구조체를 자주 이용하는 게 가비지 컬렉션의 호출 빈도를 줄이고 힙 할당/해제 보다 스택 할당/해제가 훨씬 빠른 특성 등으로 봤을 때 성능상으로 큰 장점을 가지고 있으므로 적극적으로 사용하는 걸 권한다.
- 다만 아무리 스택 할당/해제가 빠르더라도 용량이 커지면 당연히 주소만 전달하는 클래스보다 더 느려지므로 잘 판단해야 한다.
https://skuld2000.tistory.com/16
[C#/.NET] 클래스(Class) 와 구조체(Struct) 의 차이점
C# 에서 클래스와 구조체의 차이점에 대해 간단하게 짚어보자. 대부분의 경우 클래스를 사용하는 게 더 익숙할 것이다. 우리가 생각하는 객체지향적인 목표에 맞춰 다양한 기능(함수)을 수행해
skuld2000.tistory.com
[C#] 구조체와 클래스의 차이
클래스와 구조체는 데이터 타입생성기 라는 점에서는 유사하지만, 구조체는 값타입이라는것과 클래스는 참조타입이라는 점에서 차이점이 있다. 구조체를 사용하는이유는 클래스 사용시에
vaert.tistory.com
- C++에서도 구조체는 값형 클래스는 참조형인가 ?
'취업 > 기술 면접' 카테고리의 다른 글
TCP와 UDP (0) | 2022.07.08 |
---|---|
Unity 클라이언트 기술 면접 키워드 (0) | 2022.07.07 |
OSI 7계층 (0) | 2022.07.07 |
프로세스와 스레드의 차이 (0) | 2022.07.05 |
목차 (0) | 2022.06.16 |
댓글