class마다 멤버 변수,함수를 사용할때 class명을 잘 달고 사용하자.
위의 코드는 멤버 함수를 클래스 밖에서 작성한 예시이다. 해당 함수들은 inline함수가 아니다. 공부하자!!!!
위의 python tutor에 그림으로 보면 s2에서 s1으로 "soft"값이 이동한 것을 알 수 있다.
ex)strcpy(a,b) --> b의 데이터가 a로 복사해당 strcpy는 char형을 사용할때 사용하는것으로
std::string을 사용해서 만든 변수의 문자열 값을 복사할때는 대입하는것처럼 ex) s1 = s2 이렇게 쉽게할수있다.그러니 string을 사용하는것이 편하고 쉽다는 것!!
객체도 배열로 만들 수 있다!!
포인터 객체는 -> 사용!!!
생성자의 특징과 사용하는 법을 자세히 기억하자.
생성자를 사용하는 여러가지 방법들
( 1번째 줄을 가장 많이씀? )
생성자를 선언하고 밖에서 정의 하는 코드
C++에서는 변수를 초기화하는 여러가지 방법이 있으니 다른 사람의 코드를 봤을때 당황하지 않도록 알고있기.
순서대로 복사 , 직접, 유니폼??
생성자에 매개변수가 있으면 객체에도!!
#include <iostream> using std::cout; class Dog { private: int age; public: Dog(int age) { this->age = age;}; ~Dog() { cout << "소멸\n"; } int getAge() {return age;} void setAge(int age) {this->age = age;} //this 포인터를 써서 바깥에있는 멤버함수 age에 접근할수있다. //안쓰면 매개변수 age가 age에 대입하는거라 값이 안바뀜!! }; int main() { Dog happy{5}, h{2}; cout <<happy.getAge()<<h.getAge(); return 0; }