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

Указатель на бызовый абстрактный класс. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ преобразвоание int в char. речь не про atoi http://www.cyberforum.ru/cpp-beginners/thread189214.html
помогите разобраться, как происходит преобразование из int в char. например: int i =1000; char k=232; cout<<(int)k;каким образом на экран выводится -24. и почему на одном компутере выводится знак 'ш' а на другом 'и'?? Добавлено через 13 минут аа, блин, пардон. int i =1000; char k=i; cout<<(int)k;а что касается 'и' и 'ш', то значение (int)k = -24 везде. а знаки разные
C++ Динамический массив в Конструкторе Формы Такс это в юните: #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include "MYDLL.cpp" float **a; float *x; int n=5; http://www.cyberforum.ru/cpp-beginners/thread189202.html
СИ: Вывод отдельно заглавных и прописных букв из строки C++
Нужно написать задачу на СИ, задание следущее: с клавиатуры вводится случайная строка. На экран выводятся раздельно заглавные и прописные буквы(в том же порядке). пример: строка: "1asd56ASaqrRT" Заглавные буквы: "ASRT" Остальное: "1asd56aqr"
C++ Сколько дней осталось до конца года?
Написать програму которая спрашивает у пользователя дату в формате ДД ММ ГГГГ и вычисляет сколько дней осталось до конца года. Я сначала хотел по простому, но наверное не выйдет, а массивом незнаю как, и возможно ли! #include<iostream> using namespace std; void main() { const int size =12; int Arr={31,28,31,30,31,30,31,31,30,31,30,31};
C++ Class stalker http://www.cyberforum.ru/cpp-beginners/thread189169.html
Здравствуйте Помогите с созданием классов пожалуйста Заранее спасибо Написать программу на языке C++, моделирующую поведение сборщика арте- фактов (Stalker) путём создания соответствующего класса. Все сталкеры имеют одинаковую скорость v0 без груза. Каждый сталкер имеет свой псевдоним и свою грузоподъёмность m0. Сталкер добывает (mine) артефакты массы m, затем пытается из вынести...
C++ Как работает данная программа изучаю тему преобразования типов (в данном случае тип Counter преобразуется в int) и вот набрала код из книги, но не понимаю как он работает и почему: #include <iostream> class Counter { public: Counter(); Counter(int val); ~Counter() {} подробнее

Показать сообщение отдельно
zhenya.ya
1 / 1 / 0
Регистрация: 29.11.2009
Сообщений: 304
10.11.2010, 21:18     Указатель на бызовый абстрактный класс.
Правильно ли у меня написан "умный" указатель? Напонятно, как можно с помощью указателя на базовый класс вызывать методы производных классов ( все указатели должны быть "умными").
Т.е. если бы они были простыми, а не "умными" сделал бы так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
base *p;
       first fst;
       second snd;
 
       p=&fst;
       p->AddDate();
       p->WeightSort();
       p->print();
  
       p = &snd;
       p->AddDate();
       p->print();
//1.cpp Smart pointer (Умный указатель)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class A
{
private:
    int count;
public:
    A(){ count =0;}
    void add(){ count ++;}
    void del(){ if(--count==NULL) delete this;}
};
class Aptr
{
private:
    A *aptr;
public:
    Aptr(A *p) { aptr=p; p->add();}
    ~Aptr(){ aptr->del();}
    A * operator ->() {return aptr;}
};
// 2.cpp базовый абстрактный и 2 производных класса
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class base
{
public:
    int n;
    base(){n=0;}
    virtual ~base(){}
    virtual void AddDate()=0;
    virtual void print()=0;
    virtual void WeightSort(){}
};
class first:public base
{
public:
    first(){naznachenie=NULL; weight=NULL;}
    virtual ~first();
    void AddDate();
    void print(){}
    void WeightSort(); 
private:
    char **naznachenie;
    int *weight;
};
class second:public base
{
public:
    second(){adress=NULL;}
    virtual ~second();
     void AddDate();
    void print(){}
private:
    char **name;
    char **adress;
};
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru