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

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

Войти
Регистрация
Восстановить пароль
 
Anastasiya_1692
1 / 1 / 1
Регистрация: 30.12.2009
Сообщений: 53
#1

Создание нового класса - C++

26.12.2010, 00:04. Просмотров 539. Ответов 7
Метки нет (Все метки)

Доброго времени суток!!

Задание:
1. Определить пользовательский класс "компьютер".
2. Определить в классе следующие конструкторы: без параметров, с параметрами, копирования.
3. Определить в классе деструктор.
4. Определить в классе компоненты-функции для просмотра и установки полей данных.
7. Написать демонстрационную программу, в которой создаются и разрушаются объекты пользовательского класса и каждый вызов конструктора и деструктора сопровождается выдачей соответствующего сообщения (какой объект какой конструктор или деструктор вызвал).

Получается не очень....
Посмотрите пожалуйста что не так, если не трудно объясните ошибки.

P.S. Пожалуйста, не усложняйте слишком код, я только начинаю изучение (была только 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
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
60
61
62
63
64
65
66
67
68
69
70
71
#pragma hdrstop
#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <string.h>
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
class compyter{
 
public:
compyter();
compyter(char*,float,int);
compyter(compyter &c);
void print_compyter();
~compyter();
 
private:
char *name;
float chastota;
int pamajt;
};
 
compyter::compyter()
{
   pamajt=256;
   chastota=2000;
   name=new char[20];
   strcpy(name,"Komp");
   printf("constructor has called without parametrs\n");
}
 
compyter::compyter(char* p,float ch,int m)
{
   pamajt=m;
   chastota=ch;
   name=new char[strlen(p)+1];
   strcpy(name,p);
      printf("constructor has called with parametrs\n");
}
 
compyter::compyter(compyter &c)
{
   pamajt=c.pamajt;
   chastota=c.chastota;
   name=new char[strlen(c.name)+1];
   strcpy(name,c.name);
      printf("Object has made with CopyConstructor\n");
}
 
void compyter::print_compyter(void){
   printf("Name = %s\n",name);
   printf("Chastota = %lf\n",chastota);
   printf("Pamajt = %d\n",pamajt);
}
compyter::~compyter()
{
delete [] name;
}
 
int main(int argc, char* argv[])
{       compyter k1;
        compyter k2(k1);
 
        k1.print_compyter();
        k2.print_compyter();
        getch();
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2010, 00:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создание нового класса (C++):

Создание нового класса - C++
Доброго времени суток!! Задание: 1. Определить пользовательский класс &quot;компьютер&quot;. 2. Определить в классе следующие конструкторы:...

Создание нового экземпляра дочернего класса из экземпляра базового - C++
Всем привет! Извиняюсь, если вопрос глупый, но что-то не смог найти конкретный ответ на него... У меня есть несколько классов: все они...

Использование объекта одного класса при создании нового класса - C++
Добрый вечер. У меня такая проблема. Есть готовый класс L2 - список, на его основе нужно создать дек. Я поступил так: в приватной части...

Возможно ли создание объекта шаблонного класса в функции этого класса? - C++
Доброго времени суток, уважаемые форумчане :) Мне по лабам задали задание - реализовать шаблон контейнера (множество) с операциями...

Явное создание экземпляра класса и явная специализация шаблона класса - C++
Всем добрый день! Не могу разобраться - эти две технологии дают один и тот же результат? В каких случаях применять одно и другое?...

Создание класса-списка на основе кода со списком без класса - C++
Здравствуйте. Не могли бы вы показать, как оформить этот код в виде класса. Смысл задания: это засунуть в список большое число(здесь я...

7
sandye51
программист С++
685 / 587 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
26.12.2010, 00:23 #2
все нормально.
0
Anastasiya_1692
1 / 1 / 1
Регистрация: 30.12.2009
Сообщений: 53
26.12.2010, 00:31  [ТС] #3
Но не работает!
0
sandye51
программист С++
685 / 587 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
26.12.2010, 12:07 #4
че не работает?
я запустил - все работает
0
abyr
4 / 4 / 1
Регистрация: 23.12.2010
Сообщений: 27
26.12.2010, 12:30 #5
А у вас какая ось? У меня вот линь и не работает, т.к. на лине нет конио.
0
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
26.12.2010, 12:59 #6
Компилятор С++ может не принимать ваши заголовки.
C++
1
2
3
4
#include <conio.h>
#include <iostream>
#include <сstdio>
#include <сstring>
Не дублируйте темы.
0
alexs_0008
2 / 2 / 0
Регистрация: 18.12.2010
Сообщений: 5
26.12.2010, 13:37 #7
Если программу компилируешь в среде Builder C++ 6.0 то создай консольное приложение

Во время создания среда разработки предложит подключить библиотеку VCL , поставь галочку

В твоем файле должно быть

#include <vcl.h>
#pragma hdrstop

Дальше весь твой код программы

Только что проверил в Builder 6.0 Всё отлично работает в Win XP

Добавлено через 18 минут
Заработало ?
1
Anastasiya_1692
1 / 1 / 1
Регистрация: 30.12.2009
Сообщений: 53
26.12.2010, 14:03  [ТС] #8
Да спасибо!!!
0
26.12.2010, 14:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2010, 14:03
Привет! Вот еще темы с ответами:

Создание указателя типа базового класса на экземпляр производного класса - C++
Добрый день! Иногда видел коды, где создавался указатель типа базового класса на объект класса - наследника, для чего это может применяться?

Построение описания класса, создание и уничтожение объектов этого класса - C++
Построить описание класса, содержащего информацию о почтовом адресе организации. Предусмотреть возможность раздельного изменения...

Создание объекта класса с полем являющимся объектом другого класса - C++
Bill a; cin&gt;&gt;a;//тут я ввел с помощью перегруженного оператора ElementSpiska c; //поля у Spiska(Bill A,int,string,int) ...

Пример класса с конструктором и деструктором, создание экземпляра класса через конструктор с параметрами - C++
Привести пример класса с конструктором и деструктором, созданием экземпляра класса с помощью конструктора с параметрами.


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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