Допустим, у меня есть два класса:
class TV
{
...
void TV_chnl_change(int channel_number);
...
};
class Remote
{
...
void remote_chnl_change(int channel_number, TV *T)
{
T->TV_chnl_change(channel_number);
}
...
};
Оба показанных метода опубликованы c, я хочу реализовать метод TV_chnl_change
так, чтобы он мог проверить, был ли он вызван объект из Remote
класса. Можно ли в cpp получить указатель на вызывающий объект или хотя бы проверить его класс, не передавая никаких дополнительных параметров? Я не хочу, чтобы какой-либо объект, кроме Remote
, и скажем, какой-нибудь произвольный объект Viewer
мог бы использовать метод TV_chnl_change
. То, что я хочу сделать, это отказаться от использования механизма друзей.