Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 4
Регистрация: 30.12.2009
Сообщений: 53
1

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

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

Author24 — интернет-сервис помощи студентам
Доброго времени суток!!

Задание:
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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.12.2010, 00:04
Ответы с готовыми решениями:

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

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

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

Создание нового класса
Объявление класса в myutils.h ...

7
программист С++
860 / 600 / 147
Регистрация: 19.12.2010
Сообщений: 2,014
26.12.2010, 00:23 2
все нормально.
0
1 / 1 / 4
Регистрация: 30.12.2009
Сообщений: 53
26.12.2010, 00:31  [ТС] 3
Но не работает!
0
программист С++
860 / 600 / 147
Регистрация: 19.12.2010
Сообщений: 2,014
26.12.2010, 12:07 4
че не работает?
я запустил - все работает
0
4 / 4 / 1
Регистрация: 23.12.2010
Сообщений: 27
26.12.2010, 12:30 5
А у вас какая ось? У меня вот линь и не работает, т.к. на лине нет конио.
0
4773 / 2582 / 894
Регистрация: 29.11.2010
Сообщений: 5,588
26.12.2010, 12:59 6
Компилятор С++ может не принимать ваши заголовки.
C++
1
2
3
4
#include <conio.h>
#include <iostream>
#include <сstdio>
#include <сstring>
Не дублируйте темы.
0
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
1 / 1 / 4
Регистрация: 30.12.2009
Сообщений: 53
26.12.2010, 14:03  [ТС] 8
Да спасибо!!!
0
26.12.2010, 14:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.12.2010, 14:03
Помогаю со студенческими работами здесь

Создание нового окна существующего класса
Здравствуйте. Пытаюсь создать новое окно существующего класса MainWindow. В хедере написал ...

Создание нового класса
Здравствуйте, хочу создать новый класс, в котором будет метод с логикой вставки новой строки с...

Создание нового зкземпляра класса
Всем привет! Помогите пожалуйста решить вопрос. Есть у меня паблик класс. Объявляю переменную...

Xcode создание нового Obj-C класса
Когда я создаю новый Cocoa class и в 'Subclass of' выбираю UIViewController например, то xcode...

Создание нового экземпляра класса а позже его удаление
Всем привет. Есть допустим дерево и оно растет. Каждый его блок это экземпляр класса Tree, только я...

Создание нового класса для работы с базой данных
Здравствуйте, необходимо создать класс в котором будут только методы для работы с базой данных....


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru