Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MickeyBlueEyes
Студент
120 / 131 / 12
Регистрация: 07.04.2011
Сообщений: 503
#1

Виртуальный operator() - C++

05.09.2014, 21:48. Просмотров 245. Ответов 2
Метки нет (Все метки)

Есть такая иерархия классов.
C++
1
2
3
4
class Network
{
......
};
C++
1
2
3
4
5
6
7
8
9
class Server : public Network
{
  public:
    void Run() {
      boost::thread thread(*this);   
    }
 
  virtual void operator()(){}
}
C++
1
2
3
4
5
class Tcp : public Server
{
  public:
    virtual void operator()(){}
}
Запускаю:

C++
1
2
Tcp tcp();
tcp.Run();
Но срабатывает оператор класса Server, где может быть косяк?) Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.09.2014, 21:48     Виртуальный operator()
Посмотрите здесь:

Виртуальный деструктор - C++
Всем привет! Объясните пожалуйста новичку в ООП, вопрос чисто теоретический поэтому код не прилагаю. Мне сказали что если я в классе...

Виртуальный метод - C++
Здравствуйте! Помогите, пожалуйста, найти ошибку в коде. #include "stdafx.h" class Person{ protected: char *name; ...

Виртуальный конструктор - C++
Подскажите, к каких случаях необходимо использовать виртуальный конструктор, и что это такое??

виртуальный деструтор - C++
нужно ли вообще деструктор класса делать виртуальным? class base_class1 { public: base_class1() { data = new...

виртуальный деструктор - C++
есть такой пример, у меня вопрос, почему здесь деструктор декларирован просто как деструктор, а не виртуальный (и является ли он в данном...

Виртуальный метод - C++
class A { virtual void Print()=0; } class B : public A { virtual void Print() { //Печатаем в...

operator - C++
Всем привет, опять непонятка в книге, дошел до оператора operator и ничего не понял, для чего он нужен, что он делает, то есть как он...

Operator>> - C++
Привет, всем!!! У меня следующая проблема: при использовании operator>> внутри цикла while, т.е while(operator >> variable), выполняется...

Operator + - C++
Создайте в классе Circle оператор + для сложения объектов типа Circle. Необходимо складывать только величины радиусов itsRadius. ...

Operator* - C++
в этой программе мне надо умножить два числа a & b ??? допустим в ob(2,5) перемножить 2 & 5 #include<iostream> #include<vector> ...

operator = - C++
Посмотрите, пожалуйста, ато я саафсем запарилась... %) Проблема такая: есть класс, у которого есть функция присваивания: class...

Operator*=(); - C++
#include "stdafx.h" #include <iostream> using namespace::std; class Distance //Класс английских длин { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DrOffset
7058 / 4199 / 949
Регистрация: 30.01.2014
Сообщений: 6,965
05.09.2014, 22:07     Виртуальный operator() #2
MickeyBlueEyes,
C++
1
boost::thread thread(boost::ref(*this));
Убежденный
Системный программист
Эксперт С++
15296 / 6928 / 1096
Регистрация: 02.05.2013
Сообщений: 11,336
Завершенные тесты: 1
05.09.2014, 22:08     Виртуальный operator() #3
Полиморфизм в C++ работает через ссылки или указатели на базу.
И еще "Tcp tcp();" компилятор воспринимает как объявление функции.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru