객체 : 의미있는 값을 갖고있고, 다른 값을 바꿀수 있는 함수를 갖고 있고, 실제로 존재하는 것
클래스 : 어떤 값들의 타입을 분류하여 멤버 변수로 만들어 놓고, 다른 값을 바꿀수 있는 함수를 갖고 있다.
실제로 존재하지 않는다. 분류
추상화 : 객체의 특징을 찾아내어, 클래스로 작성하는 일
캡슐화 : 객체의 멤버 변수, 멤버 함수를 접근지정자를 통하여 접근제어하는 것
생성자 함수 : 객체가 생성될때 객체의 멤버 변수값을 채워 넣기 위한 함수
생성자 함수 오버로딩 : 생성자 함수가 다양한 매개변수 형태에 적용되기 위한 기술
소멸자 함수 : 객체가 소멸 될때 호출되는 함수
student.h
#include <iostream>
using namespace std;
class Student
{
private:
int studentNumber;
char name[30];
string parentAddress;
string studentAddress;
char major[30];
char phoneNumber[30];
double averagePoint; // 전체평점
public:
Student(); // 오버로딩1-1
Student(int studentNumber, char* name); // 오버로딩1-2
Student(Student& s); // 오버로딩1-3
~Student();
void setStudentNumber(int studentNumber);
int getStudentNumber();
void setName();
int getName();
// 학생전체조회
// 나의정보조회
// 학적변동
};
student.cpp
#include "student.h"
Student::Student() // 오버로딩1-1
{
studentNumber = 1500000;
strcpy(name, "");
parentAddress = "";
studentAddress = "";
strcpy(major, ""); // 의미: major = "";
strcpy(phoneNumber, "");
averagePoint = 0.0;
}
Student::Student(int studentNumber, char* name) // 오버로딩1-2
:parentAddress(""),studentAddress("")
{
this->studentNumber = studentNumber;
strcpy(Student::name, name);
strcpy(major, ""); // 의미: major = "";
strcpy(phoneNumber, "");
averagePoint = 0.0;
}
Student::Student(Student& s)
{
studentNumber = s.studentNumber;
strcpy(name, s.name);
parentAddress = s.parentAddress;
studentAddress = s.studentAddress;
strcpy(major, s.major);
strcpy(phoneNumber, s.phoneNumber);
averagePoint = s.averagePoint;
}
Student::~Student()
{
}
void Student::setStudentNumber(int studentNumber)
{
this->studentNumber = studentNumber;
}
int Student::getStudentNumber()
{
return studentNumber;
}
main.cpp
#include "student.h"
int main()
{
// 학생정보관리프로그램
Student s1(12345,"홍길동"); // 학생1명
cout << s1.studentNumber << endl;
return 0;
}
'Programming > C,CPP,CS' 카테고리의 다른 글
Winpcap Test 02 (0) | 2016.03.07 |
---|---|
Winpcap Test 01 (0) | 2016.03.07 |
C 2015-01-09 실습 (0) | 2015.01.09 |
Run-Time Check Failure #3 - The variable 'a' is being used without being initialized. (0) | 2014.05.14 |
C 언어 방향키 입력활용 (0) | 2014.05.03 |