코딩 1막 <C++개념편>(72)
-
[C++] 38. namespace
// namespace // // '공간의 분리'를 의미한다. // 함수의 명이 겹치거나 변수의 명이 겹칠때 에러발생 // 작업자들이 겹치지 않도록 만든 개념 // 최근 동향은 namespace를 잘 쓰지 않음. #include #include // namespace // // namespace는 공간의 분리를 말함 // 나만의 작업공간을 만들어 놓는 것 using namespace std;// std라는 공간을 쓰겠다. namespace A { int value = 30; void Func() { for (int i = 0; i < value; i++) { cout
2022.06.27 -
[C++] 절대 변하지 않을 변수를 상수화를 시켜보자
#define PI 3.1415f #define COL 100 #define ROW 64.9f const float pi = 3.1415f; void Func(const int& inputA, const int& inputB)// 참조자 & : 별명이라고 생각하셈. 참조자는 공간을 쓰지 않는다. { cout
2022.06.27 -
[C++] 37. 상수화
*면접에서 자주 등장하는 상수화* 1. const와 define의 차이 2. constexpr의 정의 // 상수화 // // 상수는 3, 1, 2,,,같이 '변하지 않는 값'을 말하며, 변수의 반대이다. // 변수를 상수화하는 것 // 값을 계속 바꿀 수 있는 변수와는 달리 변하지 않는 값이기에 처음 선언부터 값을 할당받게 되면서 그 다음부터는 값을 바꿀 수 없다. // 그렇기 때문에 상수를 선언할때 반드시 선언과 동시에 초기화를 같이 해야한다. // 상수화는 값을 변경시키지 못하도록 제한하고 싶을때 사용한다. // 상수화의 방법으로 크게 const로 상수를 만드는 방법과 define을 활용하여 매크로 상수를 만들어 값을 치환시키는 방법이 있다. // const와 define의 차이(const가 defi..
2022.06.27 -
[C++] 36. 자료구조 : 링크드리스트(LinkedList)
1. 링크드리스트의 개념 // 연결 리스트 // // 앞의 세 구조와 달리 메모리에 있는 데이터의 물리적배치를 사용하지 않는 데이터구조다. // index나 위치보다 '참조 시스템'을 사용한다. // 각 요소는 '노드'라는 것에 저장되며, 다음 노드연결에 대한 포인터 또는 주소가 포함된 또 다른 노드에 저장한다. // 모든 노드가 연결된 때까지 반복이 돼서 노드의 연결로 이루어진 자료구조다. // 장점 : 새로운 요소의 추가와 삭제가 용이하다. 메모리를 더 효율적으로 쓸 수 있어 대용량 데이터 처리에 적합하다. // 단점 : 배열보다 메모리를 더 사용한다. 처음부터 끝까지 순회하기 때문에 원하는 값을 비효율적으로 처리한다. // 사용예시) 음악 플레이어, 이미지 뷰어, 갤러리, 데이터를 연속적으로 빠르게..
2022.06.27 -
[C++] 큐와 스택 만들기(자료구조 헬 입성)
*head-tail / front-rear / start-end 방법1. 단방향 큐/스택 만들기 1.1 단방향 큐 #include #include #include using namespace std; class Node { public: int value; Node* next = nullptr; }; // 큐 만들기 class Queue { private: Node* head = nullptr; Node* tail = nullptr; int size = 0; public: void Enqueue(int value);// 넣는거 int Dequeue();// 빼는거 int GetSize();// size게터 bool IsEmpty();// 비어있는지 확인 void Show();// 전체 출력 }; void..
2022.06.23 -
[C++] 35. 자료구조 : 큐와 스택(Queue & Stack)
웃겨서 가져와보았습니다 이건 무슨 자료구조일까요? ㅋㅋ *삭제연산이 수행되는 곳을 프론트(front, head, start)라고 부르고, 삽입연산이 이루어지는 곳은 리어(rear,tail,end)라고 부르도록 하자!! *Queue의 경우 FIFO(First In First Out)구조로서 선입선출이라고 부른다. *Queue는 프론트에서 이루어지는 삭제연산을 디큐(Dequeue)라고 부르며, 리어에서 이루어지는 삽입연산을 인큐(Enqueue)라고 부른다. *Stack은 "쌓다"라는 의미로, 데이터를 순서대로 차곡 차곡 쌓아올린 형태의 자료구조를 떠올리면 된다. *Stack의 경우 LIFO(Last In First Out)구조로서 후입선출이라고 부른다. *Stack은 정해진 방향으로만 쌓을 수 있으며, to..
2022.06.23