По мотивам топика
http://rsdn.ru/forum/cpp.applied/4339871.aspxАвтор: _nn_
Дата: 12.07.11
.
Там дали такую ссылку
http://bloglitb.blogspot.com/2010/07/access-to-private-members-thats-easy.html
Автор статьи утвержает, что его метод делает все по стандарту. Загрузив в MSVC, я обнаружил, что его код не комплируется.
Кто не прав — автор или компилятор? Ошибка компиляции такая:
error C2248: 'A::f' : cannot access private member declared in class 'A'
На gcc этот код работает, вот ссылка:
http://codepad.org/LCVu1t6w
И еще, если написать
rob<Af, &A::f> xxx;
вместо
template struct rob<Af, &A::f>; // я так понимаю, это явное инстанциирование?
то компилируется.