#1 클래스란?사용자가 편의상 정의한 자료형이다. 구조체와 문법이 유사하나 생성자, 소멸자 등이 존재한다. 클래스를 만든다는 것은 새로운 자료형을 사용하겠다는 의미이다.클래스 정의 최종 형태클래스의 기본형태는 다음과 같다.class MyClass // 클래스 선언(헤더){ public: // 접근제한자 MyClass() // 기본생성자 { } MyClass(int number) // 매개변수 생성자 { this->number_= number; } ~MyClass() // 기본소멸자 { } int Increment() // 멤버함수 { ..
#1 구조체란?편의상 관련 있는 데이터와 함수를 묶어놓은 것이다. 클래스와 달리 모든 멤버의 접근제한자는 기본적으로 public이다.#2 구조체 선언하기struct 키워드를 통해 구조체를 선언한다. 구조체에 포함 된 변수와 함수를 멤버변수, 멤버함수라고 한다.struct MyStruct{ // 멤버변수 int first; int second; // 멤버함수 int Sum() { return first + second; }}#3 구조체의 크기 구하기구조체는 최소한 멤버변수의 크기의 합보다 크거나 같다. sizeof()함수를 통해 크기를 알 수 있다. MyStruct a; // 구조체 생성 cout #4 구조체 멤버 호출하기접근연산자(.)를 통해 멤버에 접근한다. 멤버변..
#1 BEM이란?HTML과 CSS 클래스명을 위한 명명법이다. Block Element Modifier의 약자다. HTML 태그만을 보고도 어떤 스타일을 적용할 수 있는지 알 수 있다.#2 문법/* Block component */.btn {}/* Element that depends upon the block */ .btn__price {}/* Modifier that changes the style of the block */.btn--orange {} .btn--big {}#3 예제 No Service 18:43 11% 상태표시바 안에 여러 태..
#1 상속이란?부모클래스가 자식 클래스에게 속성을 넘겨주는 것이다. 새로운 클래스를 만들 때 기존의 클래스가 가진 속성들을 그대로 사용할 수 있다. 기존의 클래스를 부모클래스, 새로운 클래스는 자식클래스이다. 상위클래스와 하위클래스라고도 한다.#2 상속 문법자식 클래스 정의하기새로운 클래스를 정의할 때 기존 클래스를 상속받을 수 있다. 새로운 클래스(자식 클래스)의 이름 옆에 부모 클래스의 이름을 기재한다.# 부모클래스class SuperClass: def method_super(self): print("Super method")# 자식클래스: 괄호로 상속받을 클래스 이름 추가class SubClass(SuperClass): pass자식 객체 사용하기자식 객체를 생성하면 자신의 메..
#1 연산자 오버라이딩init처럼 클래스를 만들 때 정해진 기능을 할 수 있도록 미리 정해진 특별한 메서드들이 있다. 연산자들도 내부적으로는 특별한 메서드로 구현되어 있다. 기본자료형처럼 객체에 연산자를 사용하고 싶으면 특별한 이름을 가진 메서드들을 만들면 된다.x = int(1)y = int(3)a = x + y#a = x.__add__(y)print(a) 벡터 자료형이다. 사용자정의 자료형이기 때문에 벡터 간에 덧셈 연산이 정의되어 있지 않다.class Vector2D: def __init__(self, x, y): self.x = x self.y = yv1 = Vector2D(1, 2)v2 = Vector2D(3, 4)v3 = v1 + v2 # ???아래와 같이 연산자..