일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 워게임
- 리눅스
- px4
- 컴퓨터구조
- 리눅스 커널
- Pwnable.kr
- pwn.college
- css
- 어셈블리어
- 프로그래밍
- 시스템프로그래밍
- C++
- pwncollege
- 리눅스커널
- 시스템
- 시그널
- wargame
- 커널
- write up
- Leviathan
- radare2
- 드론
- 알고리즘
- 취약점
- 리버싱
- 시스템 프로그래밍
- 시스템해킹
- kernel
- Bandit
- C언어
- Today
- Total
목록정보보안 (179)
Computer Security
캡슐화 기법중 하나인 프렌드에 대해 알아보자. 프렌드 C++에서는 기본적으로 멤버 변수에 접근하기 위해서 public 멤버 함수를 이용해야 한다. 다만 특정한 객체의 멤버 함수가 아닌 경우에도 private 멤버에 접근해야 할 때가 있다. 이 때 프렌드(friend) 키워드를 이용하면 특정한 객체의 모든 멤버에 접근할 수 있다. 프렌드 함수 프렌드(Friend) 함수는 기존의 함수 앞에 friend 키워드를 붙인 형태로 사용할 수 있다. 코드 예시 #include #include using namespace std; class Student { private: int studentId; string name; public: Student(int studentId, string name): studentI..
C++에서는 동일한 이름의 멤버 함수를 다양한 방식으로 활용하기 위해 오버로딩을 사용할 수 있다. 코드 예시 #include #include using namespace std; class Person { private: string name; public: Person() { name = "홍길동"; } Person(string name) : name(name) { } void showName() { cout
상속 -상속(Inheritance)은 객체 지향 프로그래밍의 주요한 특성 중 하나다. -현실 세계에서의 상속의 개념을 프로그래밍으로 그대로 가져와 사용할 수 있다. -이를 통해 프로그램의 논리적 구조를 계층적으로 구성할 수 있다. -흔히 자식이 부모의 속성을 물려 받듯이, 자식 클래스(Child Class)가 부모 클래스(Parent Class)의 속성을 그대로 물려 받아 사용할 수 있다. -그러므로 상속을 활용하여 소스코드의 재사용성을 늘릴 수 있다. 자식 클래스는 파생 클래스(Derived Class)라고도 불리우며, 부모 클래스(Parent Class)의 모든 속성을 물려 받는다. 자식 클래스는 콜론(:)을 활용하여 부모 클래스와 연결될 수 있다. 코드 예시 #include #include usin..
C++의 생성자 -C++에서는 생성자(Constructor)를 이용해 객체를 생성함과 동시에 멤버 변수를 초기화할 수 있다. -생성자는 특별한 메소드로, 클래스의 이름과 동일한 이름의 메소드로 구현된다. -생성자는 반환 값이 없다. 생성자는 여러 번 정의되어 다양한 방법으로 객체를 초기화할 수 있다. 코드 예시 #include #include using namespace std; class Character { private: string name; int ragePoint; int hp; int damage; public: Character(string n, int h, int d) { this->name = n; this->ragePoint = 0; this->hp = h; this->damage =..