반응형

c++ 33

[c++] 정보 은닉 (Information Hiding)

정보 은닉이란 -제한된 방법으로만 접근을 허용해서 잘못된 값이 저장되지 않도록 하는 방법이다. 간단한 예제로 class People { private: char name[20]; int age; public: People(const char* myname,int myage) { strcpy(name,myname); age=myage; } } int main(void) { People people("name",23) } People라는 클래스에 이름과 나이 정보가 private로 저장되어 있다. public으로 선언하면 값을 갖고 와서 변경을 할 수 있지만 private라는 접근 제어 지시자로 지정해놨기 때문에 값을 쉽게 변경할 수 없게 만들어 놓았다. 이를 잘 사용하여서 좀 더 잘 다듬어진 코딩을 디자인..

c++ 2021.02.09

[c++] 클래스(class)란?

struct를 사용할 줄 안다면 클래스를 이해하는 것에는 큰 어려움이 없다. struct와 class에 차이를 보면서 이해하면 더 수월하게 class를 이해할 수 있을 것이다. 구조체와 클래스에 가장 큰 차이는 접근제어 지시자를 선언하지 않았을 때에 구조체는 public으로 선언되고 클래스는 private으로 선언된다는 것이다. 이 차이는 구조체에 있는 멤버 변수를 어디서든 참조가 가능하다는 것이다.(구조체 선언을 했다는 조건 하에) 접근제어 지시자에 대해서는 다른 내용에서 더 정리하겠다. 선언에서도 차이가 있다. struct People { int age; char name[29]; }; int main(void) { People people = { 23,"minsu" }; } 다음을 보면 구조체는 선..

c++ 2021.02.05

[c++] 함수의 오버로딩( Function Overloding)

함수의 오버로딩이란 이름이 같은 함수를 전달되는 인자를 통해서 구분하는것을 말한다. c언어에서는 int Monster(int level) { level++; return level++; } int Monster(int hp , int attack) { hp++; attack++; return hp; return attack; } 다음과 같이 정의된 함수는 허용하지 않는다 하지만 c++에서는 다음과 같이 구분지어서 사용할 수 있다. int main(void) { Monster(10); Monster(400,40); return 0; }

c++ 2020.12.15
반응형