본문 바로가기

클래스4

Template (클래스 템플릿 , c++) 1. 클래스 템플릿               2. 클래스 템플릿 특수화    3. 클래스 템플릿 다중 인자 클래스 템플릿templateclass RandomBox{public: T GetRandomData() { int idx = rand() % 10; return _data[idx]; }public: T _data[10];};int main(){ RandomBox rb1;}class 선언 위에 템플릿 선언class 내부에서 아직 미정된 타입인 부분에 템플릿 사용인스턴스 생성시, 처럼 타입 지정 클래스 템플릿 특수화templateclass RandomBox{public: T GetRandomData() { int idx = rand() % 10; return _data[idx]; }publ.. 2024. 7. 5.
함수 객체 (C++) 1. 함수객체 형태2. 함수객체 특징 함수 객체 형태//class [함수객체이름]class Functor{public: //[반환타입] oprator()([인자],..) { //TODO } void operator()() { cout 클래스와 동일하다연산자 오버로딩을 통해서 클래스가 함수로서 사용할 수 있도록 한다. 함수 객체 특징연산자 오버로딩을 통해 여러종류의 반환타입, 인자타입 및 개수를 생성할 수 있다.상태값을 가질 수 있다 ( ex) _value ) 2024. 7. 5.
클래스 초기화 클래스 초기화 클래스 초기화클래스 단일class Knight{public:    Knight()    {         _hp = 100;     }...public:    int _hp;} 클래스 상속class Player{public    Player(int id)     {     _id = id;     }...public:     int _id;}class Knight : public Player{public:    Knight() : Player(1) // Player 기본생성자(명시적)를 이용하여 초기화 , 암시적으로도 가능    {         _hp = 100;     }     or     Knight() : _hp(100), Player(1) // 멤버변수 초기화    {}...pu.. 2024. 7. 3.
객체 지향 (+ 생성자, 소멸자) 1. 클래스2. 생성자3. 소멸자클래스  class Player{public : // 접근지정자              void Test(); //  멤버 함수public :                int _hp; // 멤버 변수               int _attack; // 멤버 변수};객체동작 및 데이터를 표현하는 설계도 역할객체의 분류클래스 : 설계도인스턴스(객체) : 클래스를 사용하기 위해 만든 객체 ( 클래스 변수 선언 했다고 생각...)클래스 구성멤버 함수 : 일반적인 함수랑 유사하나, 클래스에 속해 있다는 차이점이 존재멤버 변수 : 해당 클래스 내부에서 사용되는 지역변수와 유사한 변수(지역변수 : 중괄호 or 함수 내부 변수 ,  멤버변수 : 해당 클래스 객체 내부에서 사용되는 변.. 2024. 7. 2.