본문 바로가기

SAN의 성장일지193

[ CPP05 ] 0. 과제이해하기 예외처리에 대해 공부해봅시다. c++ 에서의 예외처리 기본 형식은 다음과 같다. try { //실행할 구문 예외를 발견하면 { throw ZZZ; // ZZZ는 예외 발생을 알리는 값 } } catch (예외 발생을 알리는 값){ //파라미터로 전달된 예외상황이 오면 실행할 구문 (예외처리문) } ex00 예외처리 클래스는 OCCP를 지키지 않아도 된다. 먼저 이 거대한 곳(bureaucrat machine)에서 작은 톱니부터 시작해보자. Bureaucrat은 다음을 꼭 가져야 합니다. constant name 1부터 150까지 범위의 grade 1이 가장 높고, 150이 가장 낮은겁니다. 그리고 유효하지 않은 범위에 대해서 초기화하려고 하면 다음의 예외를 던지세요 Bureaucrat::GradeTooH.. 2022. 8. 3.
[ CPP04 ] 0. 과제이해하기 다형성과 추상클래스, 인터페이스 다형성 : 하나의 인터페이스에 대한 서로 다른 모양의 구현 ex00 다형성 모든 문제에서 복잡한 test들을 만들어왔다. 각 클래스의 생성자와 소멸자들은 각각의 메세지들을 표현해야한다. 모든 클래스들을 같은 메세지를 사용해서 출력하도록 하면 안된다. Animal이라는 기본 클래스를 구현하고 이건 하나의 protected 속성을 가진다. std::string type; Animal을 상속받는 Dog을 구현해라 Animal을 상속받는 Cat을 구현해라 이 두 파생클래스는 그들의 이름에 따른 type필드를 정해야한다. 그리고 Dog의 type은 Dog로 Cat으 ㅣtype은 cat으로 초기화되어야 한다. Aminial 클래스의 type은 비워져 있거나 값을 채우거나 둘다 된다... 2022. 8. 2.
[ CPP03 ] 0. 과제이해하기 상속에 대해 알아봅시다. ex00 ClapTrap으로 부르는 클래스를 만들고 이 클래스는 다음의 private 값을 지정한 값으로 초기화해야한다. 생성자에 파라미터로 받는 이름 claptrap의 건강을 표현하는 Hit point (10) 에너지 포인트 10 공격 데미지 0 다음의 public 멤버 함수를 넣어라 void attack(const std::string& target); void takeDamage(unsigned int amount); void beRepaired(unsigned int amount); 아ㅏㅏㅏ 영어 싫다 그만 해석하고 싶다ㅏ 클랩트랙 공격 시 대상에게 체력을 잃게 한다. 클랩트랩이 스스로 복구하면 체력이 만큼 회복됩니다. 공격과 수리에 각각 1개의 에너지 포인트가 듭니다. .. 2022. 8. 1.
[NetPractice] 01. need to know 서브넷 마스크 : IP 주소를 호스트(컴퓨터)를 식별하는 부분과 호스트가 속한 네트워크를 식별하는 부분으로 나누는데 사용한다. 호스트가 로컬 서브넷에 있는지, 원격 네트워크에 있는지 확인하기 위해 TCP/IP 프로토콜에서 사용된다. 서브넷 마스크를 통해서 IP주소를 네트워크 주소 부분과 호스트 주소 부분으로 나눌 수 있다. 서브넷 마스크가 1인 구간은 네트워크 주소로 식별되고 서브넷 마스크가 0인 구간은 호스트 주소로 식별된다. prefix : 이진수로 바꿨을 때 1의 개수 255.0.0.0 >> /8 255.255.255.128 >> /8+8+8+1 >> /25 IP 주소 : TCP/IP 네트워크에서 호스트를 고유하게 식별한다. 고정 IP 유동 IP private IP 10.0.0.0~10.255.25.. 2022. 7. 31.
[ CPP02 ] 0. 과제이해하기 # Orthodox Canonical Class Form (OCCF) - 02부터 나오는 새로운 규칙, class를 만들 때 4가지 멤버 함수를 필수적으로 포함해야한다. Default constructor Copy constructor Copy assignment operator Destructor # 복사 생성자 복사에는 얕은 복사와 깊은 복사가 있는데 가장 이해하기 쉬운 예로 메모리를 할당받은 (원본)변수(-> 포인터)를 복사한다고 할 때 얕은 복사는 원본 변수가 가리키고 있는 주소값을 복사해와 같은 메모리를 가리킨다면 깊은 복사는 원본 변수가 할당받은 메모리 크기 만큼 새로 할당 받고 값까지 복사하는 것을 말한다. 얕은 복사는 원본 변수와 복사변수가 같은 값을 출력하며 같은 메모리를 가리키지만 깊은.. 2022. 7. 30.
[ CPP01 ] 0. 과제 이해하기 This module is designed to help you understand the memory allocation, reference, pointers to members and the usage of the switch in CPP. 메모리할당, 참조, 멤버포인터, switch 에 대해 알아보자..! ex00 - 먼저 Zombie 클래스를 생성하고 private string name을 가진다. - announce 함수를 좀비 클래스에 만들고 좀비들이 자신의 이름을 스스로 말하도록 하기 다음의 두 함수를 만들어라 - newZombie : 좀비를 생성하고 이름을 붙이고 반환하여 함수밖에서 사용할 수 있도록 해라 - randomChump : 좀비를 만들고 이름을 붙이고 announce 함수를 실행하.. 2022. 7. 28.
[도서 리뷰] 레트로의 유니티 게임 프로그래밍 에센스 레트로의 유니티 게임 프로그래밍 에센스 // 이제민 지음, 한빛미디어 이 책을 끝까지 공부하면 이런 게임들을 구현해 볼 수 있다. # 총평 (책의 분량이 워낙 많아서 1-4부를 기준으로 작성하였습니다.) 우선 나는 객체 지향 프로그래밍에 대해서 한두번 들여다 본 경험이 있다. C#과 유니티는 전혀 접해보지 않은 상태에서 이 책을 공부하게 되었다. 유니티를 처음 사용해보는 사람들을 위해 어떻게 사용하는지를 안내하는 부분이 풍성하다. 객체지향을 처음 접한다면 낯설 수 있는 상속이란 개념에 대해서, 어떤 면에서 상속이 좋고, 나쁜지를 이해하기 쉽게 설명한다. C#에 대한 설명을 하는 파트에서는 코드로 예시를 들어놓기보다는 설명으로 이해시키고 있는데, 코딩을 많이 접해보지 않은 사람이라면 이런 구성의 책이 어렵.. 2022. 7. 24.
[ NetPractice ] NetAnswer 보호되어 있는 글 입니다. 2022. 7. 12.
[도서 리뷰] 김상형의 SQL 정복 김상형의 SQL 정복 // 김상형 지음, 한빛미디어 학교 수업으로 아슬아슬하게 만든 데이터베이스 지식이 부족해서 데이터베이스, SQL의 기초를 다시 탄탄히 쌓아올릴 필요가 있다고 느끼던 중 '김상형의 SQL 정복'이라는 책을 접할 수 있는 기회가 생겼다 # 이 책은 데이터베이스를 처음 공부하려는 사람들에게 꼭 추천하고 싶다. 물론 나처럼 숭덩숭덩 이름만 공부한, 구멍난 지식을 가진 사람들에게도 추천한다. 1. 처음 공부하는 사람들에게 추천한 가장 첫번째 이유는 우선 보통 이 책을 공부하려는 사람들은 컴퓨터공학, 컴퓨터 언어를 배우던 사람들일 확률이 높다. 데이터베이스라는 새로운 개념을 이전에 배웠던 컴퓨터 언어와 비교하며 어떤 특성을 가지고 있는지, 어떻게 활용하기 위해 어떤 점을 공부해야하는 것인지 설.. 2022. 5. 29.