Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 객체와 클래스의 차이점 - 2020 - 다른 사람

<시간/>

이 포스트에서는 C++ 프로그래밍 언어와 관련하여 객체와 클래스의 차이점을 이해할 것입니다.

C++의 클래스

  • 객체 지향 프로그래밍을 구현하는 데 도움이 되는 C++ 코드 구성 요소입니다.
  • 사용자가 정의한 유형입니다.
  • 자체 데이터 멤버와 멤버 함수를 보유합니다.
  • 이러한 데이터 멤버와 멤버 함수는 클래스의 인스턴스를 생성하여 액세스할 수 있습니다.
  • 변수를 조작하는 데 사용할 수 있으며 클래스의 개체가 작동하는 방식을 알려주는 속성을 정의하는 데 사용할 수 있습니다.
  • 객체에 대한 청사진으로 이해할 수 있습니다.
    • 예:Employees 클래스를 고려하십시오. 직원 이름, 나이, 생년월일, 직위 등과 같은 많은 속성이 있을 수 있습니다.
    • 데이터 멤버라고 합니다.
    • 멤버 함수는 'draw_salary', 'get_promotion'이 될 수 있으며, 이는 클래스 개체와 관련하여 특정 작업을 수행합니다.
    • 이것은 모든 직원이 공유하는 공통 속성입니다.
  • 'class'라는 키워드를 사용하여 정의합니다.
  • 클래스 이름이 뒤에 옵니다.
  • 클래스 본문은 대괄호 안에 정의되며 세미콜론으로 끝납니다.
class class_name {
   body_of_class
};

C++의 개체

  • 객체는 클래스의 인스턴스입니다.
  • 클래스가 정의되면 메모리가 할당되지 않습니다.
  • 객체가 생성되는 순간 클래스의 모든 속성에 메모리가 할당됩니다.
  • 클래스가 정의되면 개체의 세부 사항이 정의됩니다.
  • 해당 클래스를 사용하고 작업을 수행해야 하는 경우 개체를 만들어야 합니다.
  • 객체는 아래 구문을 사용하여 명시적으로 생성되어야 합니다.
class_name object_name;
  • 점('.') 연산자를 사용하여 객체에서 클래스의 데이터 멤버 및 멤버 함수에 액세스할 수 있습니다.
    • 예:필수 속성 및 멤버 함수로 클래스가 생성되었다고 가정합니다.
    • 해당 클래스에 대한 객체가 생성되면 다음과 같은 방법으로 멤버 함수에 액세스할 수 있습니다.
object_name.member_function()
  • 기본적으로 공개된 데이터 멤버는 위와 같은 방식으로 액세스할 수 있습니다. 즉, '.' 연산자.
  • 공개 멤버는 'public' 키워드를 사용하여 정의된 멤버입니다.
  • 비공개 회원은 '비공개' 키워드를 사용하여 정의된 회원입니다.
  • 이 멤버는 개체에서 직접 액세스할 수 없습니다.
  • 'public', 'private' 및 'protected' 키워드는 데이터 구성원의 액세스 제어로 알려져 있습니다.
  • 클래스 내부에 정의된 멤버 함수는 기본적으로 인라인으로 간주됩니다.
  • 인라인 함수는 함수가 정의된 직후에 확장되는 함수입니다. 코드가 컴파일될 때 어디에나 복사됩니다(매크로와 유사). 즉, 함수 호출의 오버헤드가 줄어듭니다.
  • 클래스가 아닌 함수는 'inline' 키워드를 추가하여 인라인 함수로 만들 수 있습니다.