Используя FQL, вы можете сделать это:
http://graph.facebook.com/fql?q=SELECT url, total_count FROM link_stat WHERE url='PASTE_YOUR_URL_HERE'
G производного класса назовут. Если Вы хотите вызвать функцию в основе, звоните
Base::g();
вместо этого. Если Вы хотите назвать полученный, но все еще хотеть иметь базовую версию названы, расположение, что полученная версия g называет базовую версию в своем первом операторе:
virtual void g() {
Base::g();
// some work related to derived
}
то, что функция от основы может назвать виртуальный метод и управление, передается в производный класс, используется в шаблонном шаблоне разработки метода. Для C++ это более известно как Non-Virtual-Interface. Это широко используется также в библиотеке стандарта C++ (потоковые буферы C++, например, имеют функции pub...
, которые вызывают виртуальные функции, которые делают реальную работу. Например pubseekoff
вызовы защищенный seekoff
). Я записал пример этого в этом ответе: , Как Вы проверяете object’s внутреннее состояние?
pBase - это указатель на базу. pBase = new Derived возвращает указатель на Derived - Derived is-a Base.
Итак, pBase = new Derived является допустимым.
pBase ссылается на базу, поэтому она будет смотреть на производное, как если бы это была база.
pBase-> f () вызовет Derive :: f ();
Затем мы видим в коде, что:
Derive :: f () -> Base :: f () -> g () - но который g ??
Ну, он вызывает Derive :: g (), потому что это g, на который "указывает" pBase.
Ответ: Derive :: g ()
Хорошо... Я не уверен, что это должно скомпилировать. Следующее,
Base *pBase = new Derived;
недопустимо, если Вы не имеете:
Class Derived : public Base
он, хотят Вас предназначенный? Если бы это, хотят Вас предназначенный,
pBase->f();
Тогда, стек вызовов пошел бы как это:
Derived::f()
Base::f()
Derived::g()
На самом деле выполнение Вашего кода показывает что Полученный:: g () назван.
Поскольку Вы определили g (), чтобы быть виртуальными, наиболее полученный g () будет искаться в vtable из класса и звонил независимо от типа, Ваш код в настоящее время получает доступ к нему.
Посмотрите FAQ C++ на виртуальных функциях .
Я думаю Вы пытающийся изобрести Шаблонный Шаблон Метода