YYChan's DB

YYChan's DB

DataBase And DeveloperBlog

C++ 오버라이딩

가상함수 * 가상함수는 기본(부모) 클래스 내에서 정의된 멤버함수를 파생(자식) 클래스에서 재정의하고자 할 때 사용한다. * 기본 클래스의 멤버함수와 같은 이름의 함수를 파생 클래스에서 재정의하여 사용한다. * 파생 클래스 내에서 가상함수의 재정의는 함수 중첩 기능과 비슷하지만 파생 클래스에서 재정의되는 가상함수는 기본 클래스와 함수의 리턴값, 매개변수 개수, 형이 완전히 같아야 한다. * 가상함수의 구현을
2 min read

C++ default parameter

디폴트 매개변수 C++에서는 함수를 호출할 때 별도의 매개변수를 전달하지 않아도 기본적인 값을 전달하도록 함수 원형을 선언할 때 디폴트 값을 지정할 수 있다. 주의할 점 * 일단 디폴트 매개변수를 정의하기 시작하면 그 다음(오른쪽)의 매개변수들은 모두 디폴트 매개변수를 가져야 한다. * 선언과 정의가 따로 있다면, 선언부에만 디폴트 매개변수를 설정한다. * 특히 클래스
1 min read
learning

C++ 오버로딩

다형성 하나의 표현으로 여러개의 유형을 나타내는 방법으로 객체 지향 프로그래밍 에서는 다양한 유형 의 엔터티(기능)에 대한 단일 인터페이스를 제공하는 것이다. 이 개념은 유기체나 종이 다양한 형태나 단계를 가질 수 있다는 생물학의 원리에서 빌려온 것이라고 한다[1] 1. 출처 위키백과 ↩︎ 함수 오버로딩 다형성을 구현하는 방법중 하나로, 같은 이름을 사용하는
2 min read

생성자와 소멸자

생성자와 소멸자 * 생성자와 소멸자는 객체 지향 프로그래밍에서 클래스의 특별한 종류의 함수다 * 생성자는 객체가 생성될 때 호출되는 함수로, 객체의 초기화를 담당한다. 일반적으로 클래스와 동일한 이름을 가지고 있으며, 객체가 생성될 때 자동으로 호출되어 멤버 변수의 초기값을 설정하거나 다른 초기화 작업을 수행한다. * 소멸자는 객체가 소멸될 때 호출되는 함수로, 객체의 리소스 해제나 정리 작업을
3 min read

객체지향 프로그래밍(OOP)

객체? 아무리 생각해도 우리나라 번역가들의 어려운 말 사랑은 이해가 안된다. 굳이 쓴 단어가 객체라니... 우리 주위의 있는 모든 것(가구, 태양, 모니터, 컴퓨터, 프린터, 연필 등등...)을 보통 사물이라 부른다. 그러니까, 객체보단 사물이 어울리는 말이다. 사물지향 프로그래밍. 이제 다시 말을 뜯어보자. 사물을 지향한다? 이건 구조적 프로그래밍을 해봤다면 이해가 빠르다. 구조적
5 min read

소프트웨어 위기(crisis)

동기 수업시간에 객체지향을 배우기 위해 왜 나오게 되었는지를 보고 더 궁금해서 찾아보게 되었다. 어떤 개념이나 발전이 어째서 나왔는지를 이해하는것이 중요하다고 생각하기도 하고. 그래서 소프트웨어 위기란? F.L.바우어가 1968년 독일 가미시에서 열린 첫번쨰 나토 소프트 웨어 공학학회에서 사용했으며, 에츠허르가 1972년 튜링상 수상 연설에서도 등장했다 한다. 단순하게 설명하면, 기존의 사용하던 소프트웨어
1 min read
learning

C언어 구조체

구조체 * 구조체는 이미 정의된 서로 다른 자료형(int, char, double 등의 변수와 배열, 포인터, 구조체도 포함됨)들을 구성 요소로 하여 새로운 자료형을 만드는 것임 * 그룹핑하면 프로그래밍하기 편리한 자료들을 하나로 묶는 것임 * 배열을 사용하면 동일한 자료형 만을 한꺼번에 관리할 수 있지만 구조체는 상이한 자료형들을 한 묶음으로 관리할 수 있음 #include <
3 min read
learning

C/C++ 함수

함수 구조 * 입력 매개변수(parameter), 인자 * 출력 반환값(return value), 리턴값 함수가 돌려주는 결과 값 * void 리턴값이 없으면 리턴형 쓰는 자리에 void 매개변수가 없으면 매개변수 쓰는 자리에 void 사용 방법 * 함수 정의 함수 만들기 이름, 매개변수, 리턴형, 기능 * 함수 호출 함수 사용하기 이름, 매개변수 * 함수 선언 함수의 사용법 이름, 매개변수,
3 min read

홈 서버 제작기 - 서론

블로그의 첫 글을 의미 있게 가져가고 싶어 고민하다가 떠올린 주제가 홈 서버 제작기다. 특히 내 홈서버는 혼자 정보를 찾고 고친게 많아 나에게 의미도 깊다. 제작기라 부르지만 이미 이 블로그가 홈서버로 만들어져 있으므로 내가 어떤 시스템을 왜, 어떻게 구축했는지 정도만 파트를 나눠서 적게 될것 같다. 왜 만들게 되었는가 어떤 일을 할
3 min read