음악, 삶, 개발
Return type : const reference vs value ? 본문
무조건 sizeof() 함수를 사용하여 크기를 찍어보아야한다.
Peter 말에 의하면,
128 bits 이상이면 reference 로, 이하면 value 로 return 하는게 일반적이라고한다.
예를 들어보자.
double 은 8 byte 즉, 64 bits 이다. (1 byte 당 8 bits)
이럴때는 그냥 value 를 return 하자.
double getDouble() const {}
get 함수는 무언가를 수정할 의도가 없으니, 항상 뒤에 const 를 붙이자.
const 가 붙은 함수는, non-const 객체가 호출할수없다.
아래의 경우를 보자.
const juce::Range<double>& getRange() const {}
juce::Range<double> 타입은 두개의 double 로 이루어져 128 bits 이다.
사실 이렇게 계산하지말고, 아리까리할때는 그냥 sizeof(juce::Range<double>) 을 콘솔에 찍어보자.