코딩 모닥불
  • 메뉴 닫기
  • 글작성
  • 방명록
  • 환경설정
    • 분류 전체보기
      • C++
      • 알고리즘
      • 표준 라이브러리
      • 백준(BOJ)
  • 홈
  • 태그
  • 방명록
C++

[C++] 파생 클래스에서 상속받은 멤버의 접근성 제어하기

클래스 멤버의 접근성 제어C++에서는 클래스의 접근 지정자( access specifier )를 통해서, 외부나 상속받은 클래스에서 대상 클래스의 멤버에 접근할 수 있는지 여부를 제어할 수 있습니다.class CBase{private: int m_private;protected: int m_protected;public: int m_public;};int main(){ CBase base; base.m_private = 1; // error ! base.m_protected = 2; // error ! base.m_public = 3; // ok}클래스 외부에서 base의 멤버에 접근하려면, 그 멤버는 public 접근 권한을 가져야 합니다.그러므..

2025. 1. 20.
C++

[C++] 파생 클래스 객체에 발생하는 객체 잘림( object slicing )

객체 잘림( object slicing )클래스의 상속 관계를 이용할 때는, 기본 클래스의 포인터 타입( pointer )이나 참조 타입( reference )을 사용하여 접근해야 한다는 것을 알고 있을 것입니다. 다음은 기본 클래스 CBase에서 상속받은 클래스 CDerived의 객체에 접근하기 위해서, 기본 클래스의 참조 타입을 이용하는 것을 보여줍니다.#include #include using std::string_view;class CBase{ // 기본 클래스 int m_id;public: CBase( int id) : m_id( id){} virtual string_view getName(){ return "Base"; } // 가상 함수 int getID() const ..

2025. 1. 19.
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »

전체 카테고리

  • 분류 전체보기
    • C++
    • 알고리즘
    • 표준 라이브러리
    • 백준(BOJ)

블로그 인기글

태그

  • #std::string_view
  • #소멸자
  • #std::stack
  • #함수 객체
  • #std::vector
  • #동적 계획법
  • #namespace
  • #const
  • #복사 생성자
  • #std::queue
  • #decltype
  • #깊이 우선 탐색
  • #static_cast
  • #std::unique_ptr
  • #전방 선언
  • #auto
  • #포인터
  • #상수 표현식
  • #전처리기
  • #초기화
  • #헤더 가드
  • #std::sort
  • #Lamda
  • #이진 탐색
  • #예외 처리
  • #using
  • #범위 기반 for
  • #constexpr
  • #inline
  • #Enum
MORE
애드센스 광고 영역
Powered by Privatenote Copyright © 코딩 모닥불 All rights reserved. TistoryWhaleSkin3.4

티스토리툴바