본문 바로가기
반응형

C++30

[C++] Queue 간단 정리 Queue FIFO(First In, First Out) 방식 동작 ✅queue container는 deque와 list container에 붙어 사용 가능하다.(vector container 불가능) ✅ vector container가 불가능한 이유 : FIFO 특성상 vector는 앞에서 빼는 동작을 지원해 주지 않기 때문. ✅ 내부적으로 deque, list container로 구현되어 있으나, queue 구조로 동작하도록 멤버 함수를 제공해주는 것이다. ✅ default는 deque container 기반으로 설정 1. queue container 사용법 - 헤더파일 안에 있다. - using namespace std; 이름 공간을 사용해주면 편리하다. 2. queue conta.. 2023. 11. 27.
[C++] auto? 급식 때 건담 게임을 한창 할 때, 오토노토다케시? 누군지는 모르겠는데 입에 달고 다녔던 기억이 난다. 뭔진 모르겠다 암튼, 중간 매개체(rqt, shark뭐시기...)를 통해 ROS에서 PUB/SUB을 주고 받는 과정에서 매개체 없이 바로 주고 받는 경우 코드를 짜다보니 auto를 사용하게 되어 정리했다.(에러났는데 애가 말을 안들어서 개념정리하러옴) auto? : c++ 11 이전에는 자동 저장소 클래스에 있는 변수, 지역변수를 선언하는 역할 c++ 11부터는 auto라는 선언의 초기화 식에서 형식이 추론되는 변수를 선언하는 역할 c++ 버전에 따라 auto라는 키워드가 동작을 다르게 하니 주의하자! #include using namespace std; int main( ) { int count = .. 2023. 11. 23.
[C++] 파일 입출력 간단한 예제(ofstream, ifstream) c++에서 간단하게 txt파일에 글을 쓰고 읽어오는 예제다. "입력 문자 입니다." 라는 문자열을 file.txt 메모장에 쓰고 이 파일을 다시 읽어오는 예제다. #include "fstream" #include "iostream" #include "string" using namespace std; int main() { string str = "입력 문자 입니다."; ofstream ofs("file.txt"); ofs 2023. 11. 10.
[C++] Main함수 - 매개변수 argc와 argv *️⃣ argc와 argv 1. main 함수의 매개변수 C 에서 main함수는 프로그램 진입점이다. 즉, 최초로 함수로 구동되어 실행되는 시점이다. 함수의 매개변수(파라미터)는 이 함수를 호출할 때 전달해주는 정보를 뜻한다. 우리는 보통 함수를 만들어 놓고 호출할 때 매개변수에 정보를 넣어준다. 그런데 main함수는 최초로 시작하는 진입점인데 어떻게 정보를 전달할까? main함수의 원형은 다음과 같다. int main (int argc, char* argv[]) main 함수에 argc, argv 라는 매개 변수를 전달한다. 여기서 argc와 argv의 의미는 다음과 같다. int argc : 메인 함수에 전달되는 정보의 개수 (argument count) char* argv[] : 메인 함수에 전달되.. 2023. 11. 10.
[C++] 스마트 포인터(SMART POINTER) BAG 파일에 대해 다루다보니, 메모리 할당에 관한 코드를 보게 되어서 그런지 스마트 포인터들이 많이 보였다. 스마트 포인터는 C++에서 메모리 관리를 도와주는 중요한 기능이다. 일반적으로 new 키워드를 사용해 동적으로 할당받은 메모리는, 반드시 delete 키워드를 통해 해제해야 한다. C++에서는 메모리 누수로부터 프로그램의 안전성 보장을 위한 스마트 포인터를 제공한다. 스마트 포인터 : 포인터처럼 동작하는 클래스 템플릿으로, 사용이 끝난 메모리를 자동으로 해제해준다. 자주 쓰이는 스마트 포인터는 unique_ptr, shared_ptr이다. 내가 보고 있는 코드만 봐도, 스택오버플로나 다른 참고자료도 대부분 위 두 개만 쓴다. 왜 쓰는 지를 모르는 상황에 갖다 붙여넣기만 하니, 답답해서 정리했다... 2023. 10. 27.
[C++]What is _MSC_VER? 엠에스시벌?이 뭘까 생각하다가 무슨 버전인 듯한데, 역시 모를 땐 구글링.. Chatgpt 얘는 입만 열면 그짓말이 자동으로 나와 신뢰도가 하락했다 _MSC_VER(엠에스시벌) : 컴파일러 버전 번호의 주 번호 요소와 부 번호 요소를 인코딩하는 정수 리터럴로 정의 된다. 메이저 번호는 마침표로 구분된 버전 번호의 첫 번째 요소이고 마이너 번호는 두 번째 요소이다. 예를 들어, Microsoft C/C++ 컴파일러의 버전 번호가 17.00.51106.1인 경우 _MSC_VER매크로는 1700이다. 컴파일러의 버전 번호를 보려면 명령줄에 cl/?를 입력하면 된다. 특정 버전의 Visual Studio 또는 그 이후 버전에서 컴파일러 릴리스 또는 업데이트를 테스트하려면 >=연산자를 사용한다. _MSC_VER알.. 2023. 10. 17.
[C++] fopen() 함수란? fopen() - 파일 열기 종종 보인다. 좀더 얼굴 자주 비춰야 친해질 것 같아서 데려왔다. #include FILE *fopen(const char *filename, const char *mode); 모드 설명 r 읽기 위해 텍스트 파일을 연다. 파일이 있어야 한다. w 쓰기 위해 텍스트 파일을 작성한다. 주어진 파일이 있으면 논리 파일이 아닌 경우 해당 컨텐츠가 영구 삭제된다. a 파일의 끝에서 쓰기 위해 추가 모드에서 텍스트 파일을 연다. fopen() 함수는 파일이 없고 논리 파일이 아니면 파일을 작성한다. r+ 읽고 쓰기 위해 텍스트 파일을 연다. 파일이 있어야 한다. w+ 읽고 쓰기 위해 텍스트 파일을 작성한다. 주어진 파일이 있으면 논리 파일이 아닌 경우 해당 컨텐츠를 지운다. a+ 파일.. 2023. 8. 4.
반응형