Интересный трюк:
template < typename T >
class access_key {
private:
friend T;
access_key() {}
};
class repairmen;
class elevator {
public:
void fix( access_key<repairman> );
};
class repairman {
public:
void fix_elevator( elevator & e ) {
e.fix( access_key<repairman>() );
}
}
увидел тут
Комментариев нет:
Отправить комментарий