3
오버로드 된 접미사 연산자를 최적화하고 접두어 연산자로 바꿀 수 있습니까? 다음 코드에서 대부분의 컴파일러는 ++i
으로 i++
치료와 같은 어셈블리를 생성, 예를 들어오버로드 된 접두어/접미어 컴파일러 최적화
(컴파일러 기능 과부하가 무엇을 알고있는 경우).
for(int i=0; i<5; i++)
printf("*");
그러면 다음 코드도 동일하게 적용될 수 있습니까?
class Integer {
int data;
Integer& operator++() { ++data; return *this; }
Integer operator++(int) { Integer ret = *(this); ++(*this); return ret; }
// And more overloads...
};
for(Integer i=0; i<5; i++)
printf("*");