목록분류 전체보기 (91)
정체불명의 모모
캐스팅의 4개 종류 ㅁ 캐스팅이란? : 형(타입) 변환을 말한다. ㅁ c++에서 제공하는 캐스트 연산자 4가지 const_cast( ) : 객체의 상수성(constness)을 없애는 용도로 사용됩니다. dynamic_cast( ) : '안전한 다운캐스팅(safe downcasting)'을 할 때 사용하는 연산자 입니다. 즉, 주어진 객체가 어떤 클래스 상속 계통에 속한 특정 타입인지 아닌지를 결정하는 작업에 쓰입니다. 런타임 비용이 높은 캐스트 연산자 입니다. 내가 자세히 정리한 글 : https://uncertainty-momo.tistory.com/66?category=777980 reinterpret_cast( ) : 포인터를 int로 바꾸는 등의 하부 수준 캐스팅을 위해 만들어진 연산자 입니다. ..
안녕하세요. 이번에는 'effective c++'책에 있는 'const'내용에 대해 정리해 볼 겁니다. 'const'는 제가 알고 있는 이상으로 많은 역할을 한다는것을 책을 보고 알았네요. 역시...공부가 답이다. 여러분들도... ㅡㅜ 복붙이 아닌 공부를 하길... 그럼, 시작하겠습니다! 낌새만 보이면 const를 들이대 보자! : const의 많은 역할에 대해 알아보자! ㅁ const 의미 : const는 '의미적인 제약'을 주며(변경이 안되는), 컴파일러가 이 제약을 지켜준다는 것 입니다. 어떤 값을 불변이어야 한다는 제작자의 의도를 컴파일러 및 다른 프그래머와 나눌 수 있는 키워드 입니다. 클래스 밖에서 const의 사용 방법 - 전역 혹은 네임스페이스 유효범위의 상수를 선언합니다. - 파일, 함수..
이번 장은 '알고리즘'입니다. 언제나 어려운 알고리즘... 이번 장의 목적은 2가지 입니다. 1. 편하게 해줄 알고리즘 소개 2. 알고리즘을 사용하면서 자주 만나게 되는 문제를 피하는 방법 위 목적을 달성하기 위해 정리를 할 겁니다. 그럼... Start! 알고리즘의 데이터 기록 범위는 충분히 크게 잡자 : 이 항목에서는 객체 삽입시 일어나는 문제에 대해 해결책을 제시 해주고 있습니다. 문제 : 객체를 컨테이너에 삽입(insert) 할때 아무런 객체가 없는 경우 ▽ 예제 코드 ( transform함수를 이용하여 values객체에 있는 값을 * 10 한 값을 results에 기록하기) ▽ 결과 왜 저런 에러가 발생했을까?? 그 이유는 현재 results 컨테이너(results.end( )) 안에는 아무런 ..
가상 함수(virtual function) : 가상 함수는 기본 클래스(상속 되지 않은 클래스) 내에서 선언되어 파생 클래스에 의해 재정의 되는 멤버 함수 입니다. 포인터 또는 기본 클래스에 대한 참조(Reference)를 사용하여 파생 클래스의 객체를 참조하면 해당 객체에 대해 가상 함수를 호출 하고 파생 클래스의 함수를 실행할 수 있습니다. 이는 주로 런타임에 함수의 다형성을 구현하는데 사용 됩니다. 가상 함수는 기본 클래스내에 virtual 키워드로 함수를 선언합니다. 가상 함수 선언의 규칙 1. 클래스의 공개(public) 섹션에 선언합니다. 2. 가상 함수는 정적(static)일 수 없으며 다른 클래스의 친구(friend) 함수가 될 수도 없습니다. 3. 가상 함수는 실행시간 다형성을 얻기 위해..