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

почему деструктор работает вначале? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дан текстовый файл. Поменять местами первую и N строку (N вводится с клавиатуры) http://www.cyberforum.ru/cpp-beginners/thread882505.html
Дан текстовый файл. Поменять местами первую и N-ю строки (N вводится с клавиатуры). Помогите, пожалуйста решить задачу! Она должна быть выполнена с использованием файлового ввода\вывода.
C++ циклические алгоритмы (проверять правильность ввода данных) С клавиатуры вводят дробные числа, до тех пор пока их сумма меньше К. Число К вводится с клавиатуры и лежит в диапазоне от 0 до 1000. Программа должна проверять правильность ввода данных. Предусмотреть многократный ввод числа К. Вид экрана во время работы программы: Числа Сумма 1.5 1.5 22 23.5 http://www.cyberforum.ru/cpp-beginners/thread882497.html
C++ Метод Гаусса на С++
Помогите пожалуйста мне нужно функцию SLAU разбить не несколько подфунций, выдает все время ошибки=( //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused #include <iostream.h>
C++ Дан текстовый файл. Перепишите его в выходной файл, удалив все знаки препинания
Дан текстовый файл. Перепишите его в выходной файл, удалив все знаки препинания
C++ Нарисовать пятиугольник http://www.cyberforum.ru/cpp-beginners/thread882476.html
Кто может написать прогу где будет нарисован пятиугольник на желтом фоне, очень срочно нужно!
C++ не получается откомпилировать Есть программный код. #include <iostream> #include <clocale> #include <cstdlib> #include <cstring> // вернуть строку с последними вхождениями символов static char * uqinue(const char * const string) { // определение длины исходной строки подробнее

Показать сообщение отдельно
Mar-12
 Аватар для Mar-12
-21 / 5 / 1
Регистрация: 14.03.2013
Сообщений: 131
28.05.2013, 20:01     почему деструктор работает вначале?
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
#pragma once
class Student
{
private:
    char* name;
    int course;
public:
    Student(void);
    ~Student(void);
    Student(char * nm, int c);
    void Show(void);
    Student(const Student & s);
    Student operator =(Student s)
    {
        this->name=s.name;
        this->course=s.course;
    }
    Student operator +(const int s)
    {
        course+=s;
        return *this;
    }
    Student operator ++()
    {
        course++;
        return *this;
    }
    
};
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
#include "StdAfx.h"
#include "Student.h"
#include <cstring>
 
 
Student::Student(void)
{
    
    name=new char[7];
    strcpy(name,"NoName");
    course=0;
    
}
 
 
Student::~Student(void)
{
    cout<<"Destructor"<<endl;
    delete name;
}
 
 
Student::Student(char * nm, int c)
{
    name=new char[strlen(nm)+1];
    strcpy(name,nm);
    course=c;
}
 
 
void Student::Show(void)
{
    cout<<"Name is "<<name<<'\n'<<"Course is "<<course<<endl;
}
 
Student::Student(const Student & s)
{
    name=new char[strlen(s.name)+1];
    strcpy(name,s.name);
    course=s.course;
}
C++
1
2
3
4
5
6
7
int _tmain(int argc, _TCHAR* argv[])
{
    Student s("Tom",3);
    s++;
    s.Show();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 09:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru