Overloading 2
-
Class의 함수는 헤더와 cpp로 분리하여 사용할 수 있다. 위와 같이 헤더에는 선언된 함수의이름과 반환형을 선언해주고. cpp에는 해당 함수가 동작하는 동작문을 같은 이름으로, Class의 이름과 함께 선언해주면 된다. 위 13번 문단을 해석해보면, Calcu값을 리턴으로 돌려주는, Calcu라는 Class에 속한 Sub라는 함수가 int형의 value매개변수를 받아서 동작한다. 라는 뜻이다. 또한, 헤더 에서 cpp로 함수명을 가져올 때 에는 inline이 선언된 것과 같은 효과를 가지는데, 일반적인 함수에 비해 실행속도에 더 큰 이득이 있다. 상수화 시킨 Class에서 어떠한 변수를 수정해야할 경우 mutable 을 사용한다. 만약의 상황에서 cosnt 선언된 것이 변환되어야 할 경우 사용할 수 ..
-
함수 오버로딩 은 하나의 함수 이름을 여러번 정의하여 사용하는 것을 이야기 한다. 함수 오버로딩은 같은 이름의 함수가 서로 다른 매개변수 목록을 가지는 경우 사용이 가능하다. 예를 들어, 동일한 이름을 가진 함수가 있을 때 매개변수의 데이터 타입이나 개수가 다른 경우, 각 함수는 함수의 이름을 기준으로 호출되는것 이 아닌, 매개변수나 데이터 타입을 기준으로 먼저 참조된 다음, 함수의 이름을 참조하여 불러내게 된다. 이렇게 함수 오버로딩을 사용하게 되면, 코드의 가독성과 유지보수성을 향상시킬 수 있다. 비슷한 기능을 가지는 함수가 서로 다른 이름을 가지지 않아도 됨으로, 이름을 유지하는것이 더 쉽기 때문이다. 다음은 함수 오버로딩 을 사용한 코드의 예시이다. print는 전부 이름이 같지만, 매개변수의 종..