24.12.31 (화)
·
내배캠/TIL
std::vector 컨테이너를 class로 약식 구현해보았다.https://dong-grae.tistory.com/85 std::vector를 class로 구현#include #include using namespace std;template class SimpleVector{private: T* Data; int CurrentSize; int CurrentCapacity;public: // 기본 생성자 SimpleVector() : CurrentSize(0), CurrentCapacity(10) { Data = new T[10](); } // 매개변수를 받는 생dong-grae.tistory.com   문자열에 있는 영문으로 표기된 숫자를 실제 숫자로 바꾸는 문제를 풀었는데, 다른 사람의 풀이를 보다..
24.12.30 (월)
·
내배캠/TIL
비트 AND연산 / std::toupper / std::tolower*초기 작성 코드더보기#include #include using namespace std;string ChangeString(string Target){ for(int i = 0; i = 'a' && Target[i] = 'A' && Target[i]  string::find 함수로 공백 문자 단위로 파싱하여 주어진 규칙에 맞게 문자dong-grae.tistory.comhttps://dong-grae.tistory.com/73  주어진 규칙에 맞게 문자열을 변환하는 문제를 풀다가 다른 사람의 풀이 방법을 보았는데 비트 연산자와 toupper, tolower 함수에 대해 알게 되어서 정리하였다.현재 비트연산자는 And 연산자만 간략하게 알..
24.12.27 (금)
·
내배캠/TIL
객체지향적으로 설계하는 것이 익숙치 않아서 연습이 많이 필요해 보인다..객체 지향 설계 연습: https://dong-grae.tistory.com/70   https://dong-grae.tistory.com/69 3진법 뒤집기*string을 사용한 초기 작성 코드더보기#include #include #include using namespace std;string Trit(int n){ string Result = ""; while(n != 0) { Result += to_string(n % 3); n /= 3; } return Result;}int solution(int n) { // 3진법으로 변환하dong-grae.tistory.com
24.12.26 (목)
·
내배캠/TIL
*초기 매개변수 실수한 코드더보기void QuickSort::SortAlgorithm(vector NumList, int Left, int Right){ if (Left NumList, int Left, int Right){ // 임의로 마지막 값을 Pivot으로 설정 int Pivot = NumList[Right]; int i = Left - 1; for (int j = Left; j Pivot) { ++i; swap(NumList[i], NumList[j]); } } } // (i + 1)은 Pivot의 최종 위치 swap(NumList[i + 1], NumList[Right]); // Pivot의 위치 인덱스 반환 return i + 1;}  사용자가 입력한 숫자들을 오름차..
24.12.25 (수)
·
내배캠/TIL
STL에 관한 강의를 듣던 중, sort 의 사용자 정렬 기준을 정하는 함수를 구현하다가 오류가 발생하였다.Person 클래스의 GetAge와 GetName 함수에서 오류가 발생한 것을 확인했고, 이 포인터가 const Person에서 Person & 타입으로 변환할 수 없다는 것을 확인할 수 있었다.  이 문제에 대해 조사를 해본 결과C++에서 멤버 함수는 호출된 객체의 주소를 가리키는 'this' 포인터를 암묵적으로 사용한다.const 객체에서 멤버 함수를 호출하면, 'this' 포인터는 const 포인터 타입으로 전달된다.그러나 const가 아닌 멤버 함수를 호출하면,  일반 포인터 타입의 'this' 포인터를 필요로 한다.이 차이로 인해 const 포인터를 일반 포인터로 변환하려고 시도하지만, 이..
24.12.24 (화)
·
내배캠/TIL
https://dong-grae.tistory.com/56 스택 과 힙Stack일반 지역 변수들은 stack 메모리에 할당된다.지역 변수는 해당 함수가 종료되면, 변수 선언시 할당되었던 메모리가 회수되며 소멸된다. 따라서 사용자가 따로 메모리를 관리해줄 필요가 없dong-grae.tistory.com  https://dong-grae.tistory.com/57 스마트 포인터Dangling Pointer 정의 : 이미 해제되었거나 소멸된 주소를 가리키는 포인터 발생 상황:동적으로 할당된 포인터가 해제 되었음에도 해당 포인터를 계속 사용하려고 할 때지역 변수가 Stack메모리에dong-grae.tistory.com https://dong-grae.tistory.com/58 템플릿 함수매개변수의 타입이 다르거..