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

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

Войти
Регистрация
Восстановить пароль
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
#1

Явный вызов и объявление статических полей - C++

02.12.2012, 18:39. Просмотров 325. Ответов 4
Метки нет (Все метки)

1) Как сделать невозможным явный вызов деструктора и операторов?
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
class MyClass
{
private :
    int _n;
 
public :
    MyClass(int number) : _n(number) {}
    ~MyClass() {}
 
    bool operator < (MyClass &x)
    {
        return _n < x._n;
    }
};
 
void main()
{
    MyClass *a = new MyClass(10), *b = new MyClass(13);
    bool comp1 = *a < *b;
    delete a, delete b;
 
    MyClass *c = new MyClass(14); c->~MyClass(); // Не должно работать
    bool comp2 = a->operator<(*c); // Не должно работать
}
2) Для того, чтобы статическое поле класса "заработало", его нужно объявить вне класса ещё раз. Как обойтись без этого?
C++
1
2
3
4
5
6
class MyClass
{
public :
static int n;
};
int MyClass::n; // Необходимо обойтись без этого
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2012, 18:39     Явный вызов и объявление статических полей
Посмотрите здесь:

Явный вызов деструктора - C++
Есть класс Person, с полями string,string,long. Исходные данные хранятся в файле. Нужно сделать вектор объектов этого класса. ...

Явный вызов деструктора - C++
Добрый вечер всем! Я раньше читал статью о деструкторах, и там говорилось что можно явно вызвать деструктор. Статью я прочитал и забыл) И...

Явный вызов конструкторов перемещения - C++
Для перемещения предлагается такая запись: TYPE a; TYPE b = std::move(a); Но при этом, если у объекта не задан конструктор...

Объявление статических констант шаблонных классов - C++
Что-то я туплю - дан шаблонный класс, принимающий в качестве аргументов шаблона типы Type1 и Type2. В классе есть статическая константа...

Инициализация вещественных статических константных полей класса С++ - C++
static const double x=2.15; //c double и float не инициализирует. Почему??

Объявление и вызов функций? - C++
Из двух книжек ни фига не понял как вызывать эти чёртовы функции, а без них никуда. Помогите пожалуйста. в этом примере: ...

Объявление, определение и вызов двух функций - C++
//Программа должна включать в себя: объявление, определение и демонстрацию работы через вывозов двух функций : //а) Аргументы:...

Неправильное объявление или вызов подпрограмм - C++
Приветствую Вас форумчане, помогите разобраться с кодом, недавно начал изучать с++ - вот решил накропать программку по обработке CDR-файлов...

явный деструктор - C++
class TIMER { public: TIMER() { std::cout &lt;&lt; &quot;constructor&quot; &lt;&lt; std::endl; } ~TIMER() { ...

Явный конструктор копирования в c++ - C++
Когда в программе нужен явный конструктор копирования?

Явный и неявный конструктор - C++
явный конструктор-это...? неявный конструктор-это...? спасибо.

Явный метод Эйлера для ОДУ - C++
есть код #include&quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;fstream&gt; using namespace std; double const...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
В астрале
Эксперт С++
7968 / 4730 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
03.12.2012, 09:38     Явный вызов и объявление статических полей #2
nexen, 1) Перенести деструктор в private/protected секцию и только так.
2) Никак.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
03.12.2012, 12:56  [ТС]     Явный вызов и объявление статических полей #3
Цитата Сообщение от ForEveR Посмотреть сообщение
nexen, 1) Перенести деструктор в private/protected секцию и только так.
2) Никак.
А с оператором что делать? D:
ForEveR
В астрале
Эксперт С++
7968 / 4730 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
03.12.2012, 13:01     Явный вызов и объявление статических полей #4
nexen, Для чего данный изврат?
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
03.12.2012, 13:04  [ТС]     Явный вызов и объявление статических полей #5
Цитата Сообщение от ForEveR Посмотреть сообщение
nexen, Для чего данный изврат?
Чтобы потешить внутреннее дитё новыми - возможно - бесполезными знаниями :3
Yandex
Объявления
03.12.2012, 13:04     Явный вызов и объявление статических полей
Ответ Создать тему
Опции темы

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