프로그래밍(Programming)/c++, 11, 14 , 17, 20
operator [] 를 정의하지 않고 사용하기
3DMP
2013. 2. 27. 14:10
class A{
public :
float x,y,z;
A(){
x=3;
y=5;
z=7;
}
operator float*(){
return &x;
}
// 이부분의 주석만 제거하면 operator float*() 가 아닌 float& operator [] 으로 수행된다, 컴파일러마다 다른지는 확인 않함
/*float& operator [](int index)
{
return *((&x)+index);
}*/
};
int main()
{
A ai;
std::cout<<ai[0]; 결과는 3 5 7
return 0;
}
반응형