본문 바로가기

공부,일/C++12

상속에 대해서 virtual, override , public , private, protected, friend public , private, protected 상속시 제한자 설정 모든 변수가 설정한 제한자 보다 엄격히 보호됨 ex) private , protected , public 각가 존재 시 protected 로 상속 public 변수는 protected 로 강화 private 변수는 그대로 유지 -> 즉 부모 클래스의 접근 제한자를 그대로 유지하기 위해서는 public 을 사용한다. #include using namespace std; class base { private: int Num_private; protected: int Num_protected; public: int Num_public; base(): Num_private(1), Num_protected(2), Num_public(3) {} .. 2021. 11. 21.
DFS , BFS DFS : Depth First Search(깊이 우선 탐색) [스택]으로 구현. BFS : Breadth First Search(너비 우선 탐색) 큐(Queue)를 이용하여 구현. 2021. 11. 6.
erase https://cho001.tistory.com/164 C++ 벡터 특정 원소 지우는 방법 vector.erase(),remove() 등 Tips 1. Erase를 활용하는 방법 벡터 v에서 i번째 원소를 삭제하고 싶다면 erase 함수를 사용하면 된다. erase 함수의 인자는 iterator 즉, 지우고 싶은 원소의 주소이다. http://www.cplusplus.com/reference/vector/v.. cho001.tistory.com https://modoocode.com/240 C++ 레퍼런스 - string 의 erase 함수 modoocode.com iterator erase(const_iterator position); iterator erase(const_iterator first, .. 2021. 11. 6.
map map 은 dictonary 같은 자료형으로 key value 쌍을 이룬다. c++ 에서 map 은 항상 key 기준으로 오름차순을 정령된다. p.s) 내림차순 정렬을 위해서는 map mp ; 와 같이 정의해 주면 되다. 1. map 선언 데이터 추가 방법 // insert mx1.insert({ "abp",1 }); mx1.insert({ "bbb",2 }); mx1["ccc"] = 3; for (auto it = mx1.begin(); it != mx1.end(); it++) { cout first 2021. 10. 24.
연산자 오버 로딩 (리턴 타입) operator(연산자) (연산자가 받는 인자) ex) bool operator==(MyString& str); ex) 복소수 클래스 생성 #include using namespace std; class Complex { private: double real, img; public: Complex(double real, double img) : real(real), img(img) {} Complex(const Complex& com) { real = com.real; img = com.img; } Complex operator+(const Complex& com) const; Complex operator-(const Complex& com) const; Complex& operator=.. 2021. 10. 18.
복사 생성자 1. 복사 생성자란 예제 코드 class 포톤캐논 // 포토캐논 #include #include class Photon_Cannon { int hp, shield; int coord_x, coord_y; int damage; public: Photon_Cannon(int x, int y); Photon_Cannon(const Photon_Cannon& pc);// 복사 생성자 void show_status(); }; Photon_Cannon::Photon_Cannon(const Photon_Cannon& pc) { std::cout 2021. 10. 18.
Temporary Object Temporary Object object 의 이름이 없으면서 stack memory 에 있는 변수이다. 리터럴 변수의 오브젝트 버전이라고 생각한다. 오브 젝트 변수는 해당 라인의 세미콜론(;) 을 만나면 수명이 끝난다. 예제 클레스 #include using namespace std; class Point { public: int x, y; Point(int a, int b) : x(a), y(b) { cout 2021. 10. 17.
string 클래스 find #include #include using namespace std; void main() { string s = "ABCD 123 abc"; s.find('C'); //output : 2 s.find("CD"); //output : 2 cout 2021. 8. 25.
배열 #include // 배열 int main() { int arr[] = { 1,2,3,4 }; for (size_t i = 0; i 2021. 8. 25.