С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Не вызывается деструктор - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти число расположений N ферзей на шахматной доске размером N*N http://www.cyberforum.ru/cpp-beginners/thread887029.html
Необходимо расположить N ферзей так, чтобы ни один из них не был под ударом, то есть по одному на каждый столбец, каждую строку и каждую диагональ. Я думаю, что это возможно только тогда, когда один...
C++ Рекурсия (вывести значение целочисленного выражения, заданного в виде строки S) Вывести значение целочисленного выражения, заданного в виде строки S. Выражение определяется следующим образом: <выражение>::=<цифра> | (<выражение><знак><выражение>) <знак>::= + | – | * Эту... http://www.cyberforum.ru/cpp-beginners/thread887001.html
Сумма ряда, ошибка C++
Я не мега-прогер, так что не судите... Вылетает ошибка. expected 'while' before numeric constant. expected ')' before ';' token. Вот сам код. #include <iostream> #include <math.h>...
C++ Заданную строку перевести в массив из слов
Всем привет, вот дан string предложение, нужно все это перевести в массив из слов . Что можно сделать?
C++ Быстро возвести в квадрат число заданной длины (<16 байт) http://www.cyberforum.ru/cpp-beginners/thread886980.html
Нужно быстро возвести в квадрат число заданной длины (<16 байт). Лучшее, что я пока придумал -- это делить число на 2 маленьких по формуле: (a+bx)^2=2(\frac 12a^2+abx+\frac 12b^2x^2), где умножение,...
C++ почему не добавляет элемент? insert() должен добавить один элемент,но он неправильно работает,где ошибка? #include "stdafx.h" #include <iostream> using namespace std; void Insert(const int index,const int value,int *... подробнее

Показать сообщение отдельно
NonCFist
0 / 0 / 0
Регистрация: 01.06.2013
Сообщений: 12

Не вызывается деструктор - C++

01.06.2013, 06:28. Просмотров 683. Ответов 11
Метки (Все метки)

_Здравствуйте. Я новичок в программировании, сейчас изучаю самостоятельно С++ по книге Джесса Либерти. При разборе одного из примеров передачи параметров в функцию как ссылок (с помощью указателей),столкнулся с тем, что в отличие от output в книге, у меня не выводится сообщение, которое прописано в деструкторе. Скажите плиз, в чем причина?
Код:

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 // Передача константных указателей на объекты.
#include <iostream>
using namespace std;
 
class SimpleCat
{
public:
    SimpleCat();
    SimpleCat(SimpleCat&);
    ~SimpleCat();
 
    int GetAge() const { return itsAge; }
    void SetAge(int age) { itsAge = age; }
private:
    int itsAge;
};
 
SimpleCat::SimpleCat()
{
    cout << " SimpleCat constructor...\n";
    itsAge = 1;
}
 
SimpleCat::SimpleCat(SimpleCat&)
{
    cout << " SimpleCat copy constructor...\n"; 
}
 
SimpleCat::~SimpleCat()
{
    cout << " SimpleCat destructor...\n";
}
    
const SimpleCat * const FunctionTwo (const SimpleCat * const TheCat);
 
int main()
{
    cout << "\n\n";
    cout << " Making a cat...\n";
    SimpleCat Frisky;
    cout << " Frisky is " << Frisky.GetAge() << " years old\n";
    int age = 5;
    Frisky.SetAge(age); 
    cout << " Frisky is " << Frisky.GetAge() << " years old\n";
    cout << " Calling FunctionTwo...\n";
    FunctionTwo(&Frisky);
    cout << " Frisky is " << Frisky.GetAge() << " years old\n";
    cout << "\n\n";
    system ("pause");
    return 0;
}
 
const SimpleCat * const FunctionTwo (const SimpleCat * const TheCat)
{
    cout << " FunctionTwo returing...\n";
    cout << " Frisky is now " << TheCat->GetAge() << " years old\n";
    //TheCat->SetAge(8); const!
    return TheCat;
}
Результат:

Making a cat...
SimpleCat constructor...
Frisky is 1 years old
Frisky is 5 years old
Calling FunctionTwo...
FunctionTwo returing...
Frisky is now 5 years old
Frisky is 5 years old


Для продолжения нажмите любую клавишу . . .
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.