목록2022/09 (44)
치춘짱베리굿나이스
CPP05 Repetition and Exceptions 반복과 예외 예외 클래스 (std::exception) 상속받아 예외 만들기 [Effective Modern C++] 항목 14. 예외를 방출하지 않을 함수는 noexcept로 선언하라 class ExceptionFoo: public std::exception { public: const char* what() const throw(); // C++98까지, 현재는 deprecated const char* what() noexcept override; // C++11부터 추가된 키워드 }; std::exception 클래스 구현체를 보면 C++ 98에서는 throw() 를 사용하고, C++11부터는 noexcept 키워드를 사용한다 throw() ..
CPP 04 Subtype polymorphism, abstract classes, interfaces 서브타입 다형성, 추상 클래스, 인터페이스 서브타입 다형성 포함 다형성이라고도 한다 상위 클래스의 메서드를 하위 클래스가 상속받은 뒤 다른 동작을 하게끔 재정의하여 사용하는 방법이며, 오버라이딩 (Overriding) 이라고도 한다 과제에서는 Animal 클래스를 상속받은 Dog, Cat 클래스가 각기 다른 소리를 내도록 오버라이딩하는 과정이 들어있다 가상 함수 (virtual function) [C++] 가상함수(virtual) 사용법 총정리 코딩교육 티씨피스쿨 부모 클래스의 멤버 함수 중, 파생 클래스에서 재정의할 것을 기대하는 함수이다 기대 라는 단어가 뭔가 요상하기도 한데, 부모 클래스에서 이 ..
Inheritance 상속 함수 선언 뒤에 const 의미 C++ 함수 뒤에 const - dydtjr1128's Blog void foo(void) const; 이 함수 (foo) 내에서는 어떠한 변수도 바꿀 수 없다는 뜻 클래스의 멤버 변수도 바꿀 수 없고 다른 변수도 수정할 수 없으며 const 함수를 제외한 어떠한 함수도 호출할 수 없다 void foo() vs void foo(void) Is it better to use C void arguments "void foo(void)" or not "void foo()"? void foo(void) 이 함수에는 필요한 인자가 없다는 뜻이다 void foo() C++에서는 void foo(void) 와 같은 의미를 갖지만, C에서는 ‘임의의 인자를 몇..
Ad-hoc polymorphism, operator overloading and Orthodox Canonical class form 임시 다형성, 연산자 오버로딩과 캐노니컬 클래스 임시다형성? 자바스크립트에서의 객체지향 (1) 객체지향 기본 자바스크립트에서의 객체지향 (1) 객체지향 기본 객체지향 올 것이 왔다 자바스크립트 프로그래밍을 하면서 그 편의성 때문에 클래스를 종종 이용하는데, 물론 잘 알고 쓰는 것은 아니다 심지어 자바스크립트의 클래스는 정석적인 클래스도.. blog.chichoon.com 예전에 정리했던 객체지향 글 복붙 (자스 기준이긴 하지만…) 여기서 임시 다형성이란 ‘같은 이름을 가진 함수가 타입에 따라 다르게 행동할 수 있는 성질' 이라고 정리했었다 오버로딩이 그 예이자 임시다형성..
https://www.youtube.com/watch?v=C8RdxCK7Uts 요즘은 실리카겔이라는 밴드에 빠졌다... 뮤비를 보면 이게 뭐지 싶다가도 헤어나올 수 없는 매력이 있는 밴드다 내 생각 멋지게 녹여내기 한때 (대학교 1~2학년때) 인터넷 커뮤니티 눈팅을 즐기던 시절이 있었다 인터넷 커뮤니티... 라곤 하지만 기껏해야 인스타그램이나 페이스북 등지의 이슈 모음 계정을 염탐하는 정도였는데, 지금 돌이켜보면 굉장히 많은 시간을 어찌 보면 의미없는, 영양가 없는 게시물에 허비했었다 이슈 모음 계정의 게시글은 대개 자극적이다 그도 그럴 것이, 그들은 정보 전달을 목적으로 하는 것이 아니라 불특정 다수에게 노출되어 조회수를 끌어모아 광고 효과를 높이려는 것 뿐이기 때문이다 자극적인 만큼 단어 선택도 한정..
CPP01 Memory allocation, pointers to members, references, switch statement 메모리 할당, 멤버 포인터, 참조, switch 구문 string.npos 의미 C++ - std::string::npos (npos의 의미) size_type 값으로, string.find() 메서드와 함께 사용된다 문자열을 찾지 못했을 경우 npos가 반환된다 no position 이라는 뜻이 아닐까 참조와 포인터 차이 참조 원본 변수와 같은 값을 가리키며, 원본 변수에 변동이 있을 경우 참조의 값도 변한다 따로 메모리 공간을 할당하여 저장하지 않으므로, 원본 변수와 같은 주소를 갖는다 선언과 동시에 초기화하지 않으면 오류가 난다 한번 초기화한 값은 재할당할 수 없다 ..
DBMS 설명 Database Management System 데이터베이스 관리 시스템으로, 데이터의 집합을 만들고 저장 및 관리를 도와주는 툴이다 DBMS를 통해 데이터베이스를 효율적으로 관리할 수 있고, 응용 프로그램들이 쿼리문을 통해 데이터베이스에 접근할 수 있게 된다 DBMS의 종류에 따라 ANSI SQL에 추가 문법들이 더해지거나 기능이 더해져 데이터베이스를 조금 더 구체적으로 다룰 수 있기도 한다 관계형 데이터베이스에서 가장 많이 사용되는 DBMS는 오라클에서 만든 Oracle Database이고, MySQL, Microsoft SQL, PostgreSQL 등도 많이 사용된다 특징이 조금씩 다르기 때문에 사용하기 전에 구체적으로 알아보는 것이 좋겠다 장단점 장점 데이터를 보기좋게 보여준다 CL..
https://www.youtube.com/watch?v=WH6CGngkuxw 커밋다이어트 정말 뜬금없이 든 생각인데 커밋을 할 때마다 스쿼트를 10번씩 하면 다이어트가 되지 않을까? 커밋 1회에 스쿼트 10회 풀리퀘 1회에 크런치 100회 풀리퀘 머지되면 나가서 운동장 10바퀴 뛰기 하지만 그러다간 스쿼트 하기가 싫어서 커밋을 최대한 안 하고 풀리퀘스트 하나에 커밋 1개 수정사항 몇백줄 하는 요상한 형태의 PR이 될 것 같다 운동 최근에 허리를 삐끗했는데 이게 생각보다 오래 가고 있다 챌린지 끝나자마자 삐었으니까 한 3주 됐나... 금방 고쳐질 줄 알았는데 계속 의자에 앉아있기만 해서 그런것 같다 아침마다 필라테스를 했었는데 지금은 여건이 되지 않아서 쉽지않다... 왜 나는 아침에 바쁜가... 늦잠을 ..