목록Categories (1096)
KoreanFoodie's Study
모두의 코드를 참고하여 핵심 내용을 간추리고 있습니다. 자세한 내용은 모두의 코드의 씹어먹는 C++ 강좌를 참고해 주세요! C++ 템플릿 도입 아래와 같은 벡터 클래스를 만들었다고 하자. class Vector { int* data; int capacity; int length; public: Vector(int n) : data(new int[n]), capacity(n), length(0) {} void push_back(int input); void remove(int index); int size() { return length; } void print_data() { for (int i = 0; i < n; ++i) { std::cout
마음이 따뜻하다는 것을 어떻게 정의내리면 좋을까. 그냥, 온기를 오감으로 느끼듯 따스한 마음이라는 놈을 자연스럽게 받아들이면 안되는 걸까. 따뜻한 마음이라는 녀석의 정체를 꼬질꼬질하게 파고들어 결론을 내려야 직성이 풀리는 슬프디 슬픈 나의 성격이여. 어쩌면 나는 따뜻한 마음을 가지기에 이미 틀린 운명을 타고난 건 아닐까 싶기도 하다. 그러나 타고난 팔자 따위, 노력으로 극복할 수 있다고 믿는 나이기에 아직 일말의 희망은 남아 있지 않을까. 사람은 변한다. 이전 글에서도 그 주제를 다룬 적이 있고 앞으로도 사람이 변한다는 나의 생각은 바뀌지 않을 것이다. 사람은 끊임없이 변한다. 물론 변모하는 생김새는 각기 다르다. 마치 먹구름에서 뛰쳐나온 빗방울이 서로 다른 무늬의 결정을 이루듯이. 그렇다면 나는 어떨까..
모두의 코드를 참고하여 핵심 내용을 간추리고 있습니다. 자세한 내용은 모두의 코드의 씹어먹는 C++ 강좌를 참고해 주세요! fstream 파일 스트림클래스 fstream을 상속받아 istream과 ostream을 입출력 클래스로 사용하자. std::ifstream in("test.txt"); std::string s; if (in.is_open()) { in >> s; std::cout
모두의 코드를 참고하여 핵심 내용을 간추리고 있습니다. 자세한 내용은 모두의 코드의 씹어먹는 C++ 강좌를 참고해 주세요! C++ 입출력 라이브러리 C++ 입출력 클래스는 ios_base를 기반으로 하며, 스트림의 입출력 형식 관련 데이터를 처리한다(정밀도, 10진수/16진수 등 결정). ios 클래스에서는 실제로 스트림 버퍼를 초기화하고 입출력 작업의 상태를 처리한다(파일의 끝에 도달했을 경우 eof 함수 호출, good 함수 호출로 입출력 작업 체크) istream 클래스 istream은 실제로 입력을 수행하는데, operator>>가 istream 클래스에 정의된 연산자이다. 또한 cin은 istream 클래스의 객체 중 하나이다. cin은 엔터나 공백을 입력 시에 무시해 버린다. 또한, opera..
'스파이더맨 : 노 웨이 홈'에서 닥터 스트레인지는 스파이더맨에게 이런 대사를 던진다. "The problem is you trying to live two different lives. The longer you do it, the more dangerous it becomes!" 스파이더맨은 참 욕심이 많다. 욕심이 없는 사람이 세상에 어디 있겠냐마는, 극중의 피터 파커는 철부지라는 컨셉답게 원하는 것을 쏙쏙 골라가지려고 하는 아이같은 면모를 보여준다. 그래서 큰 어른이자, 마치 숙부같은 존재인 닥터 스트레인지에게 떼를 쓰기도 한다. "문제는 너가 두 가지 다른 삶을 동시에 살려고 하는 데에 있는거야." 닥터 스트레인지로서의 삶을 살기 위해 스티븐이라는 삶을 포기했던 그이기에, 닥터 스트레인지는 스파..
모두의 코드를 참고하여 핵심 내용을 간추리고 있습니다. 자세한 내용은 모두의 코드의 씹어먹는 C++ 강좌를 참고해 주세요! vitrual 소멸자와 메모리 누수 사실 virtual 소멸자를 사용하는 이유는, 메모리 누수(memory leak)을 막기 위해서이다. 다음 예제 코드를 보자. class parent { public: parent() { std::cout
모두의 코드를 참고하여 핵심 내용을 간추리고 있습니다. 자세한 내용은 모두의 코드의 씹어먹는 C++ 강좌를 참고해 주세요! 다운캐스팅 이전 글에서 사용했던 Base 클래스와 Derived 클래스를 약간 변형해 보자. #include #include class Base { std::string s; public: Base() : s("기반") { std::cout
모두의 코드를 참고하여 핵심 내용을 간추리고 있습니다. 자세한 내용은 모두의 코드의 씹어먹는 C++ 강좌를 참고해 주세요! 표준 String 클래스 C++에서 문자열을 표현할 때는 char[ ]이 아닌, 표준 String 클래스를 사용하자. 상속 직원을 관리하는 EmployeeList와 Employee class를 만들었다고 가정해 보자. class Employee { std::string name; int age; std::string position; int rank; public: Employee(std::string name, int age, std::string position, int rank) : name(name), age(age), position(position), rank(rank) ..
"하늘에서 쓰레기가 내리고 있다" 새파란 일병이던 시절, 눈이 내릴 때마다 우리 부대의 모 병장이 했던 이 말은 아직도 잊혀지지가 않는다. 나는 당시에 1200미터 정도 되는 산 위에서 근무했었는데, 겨울이 되면 부대가 온통 눈으로 뒤덮였다. 나름 장관이었다. 그래서 밤낮이 바뀌는 근무를 뛰러 나가는 와중에도 나는 종종 설산의 아름다움에 감탄하곤 했다. 하지만 모든 일에는 일장일단이 있는 법. 눈이 오는 날이면 교대근무로 잠든 나를 깨우는 사이렌이 울려퍼졌다. 제설을 하라는 하늘의 계시인 것이다. 다행히 부대가 좁아서 제설할 영역이 많지는 않았지만, 제설이라는 건 너무나도 귀찮고 고된 일이었다. 죄는 미워하되 사람은 미워하지 말라고 했던가. 사실 눈에게는 아무 잘못이 없었다. 누군가에게는 설렘이라는 선물..
어릴적, 눈은 항상 내 마음을 설레게 했다. 시골에서는 대단한 놀거리가 없었으니까. 방구석에 친구들과 옹기종기 모여 했던 유희왕, 그리고 날씨가 좋은 날 동네 아이들 몇이 모여 와리가리와 발야구를 했던 추억들. 혹은 뒷동산 냇가에서 돌 아래에 숨어 있는 가재를 잡고 놀았던 기억들. 그 정도가 눈이 오지 않은 날 즐길 수 있었던 일탈의 거의 전부였던 것 같다. 하지만 눈이 내리면, 눈이 누렇게 내팽개쳐져 있는 들판을 덮어버리면 우리는 마치 별장이 딸린 놀이동산에 온 것만 같이 밖을 뛰쳐나갔다. 스키장도 아닌데 창고에서 빨간색 스키복을 꺼내입고, 눈 썰매장도 아닌 곳에서 형광색 플라스틱 썰매와 쌀포대를 타며 스릴을 즐겼다. 신비한 눈. 비가 너무 추워 흰 옷을 입었을 뿐인데 언제나 모두에게 환영받게 된 예쁜..