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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
STyDeNTuK
30 / 12 / 3
Регистрация: 22.09.2009
Сообщений: 157
#1

Описать класс используя 3 вида конструкторов - C++

01.12.2011, 02:30. Просмотров 1482. Ответов 2
Метки нет (Все метки)

Компилятор у меня по идее кривой, ошибку не пишет а просто выдаёт прекращена работа программы Project1.exe
Помогите понять в чём проблема.

Просто описывается класс Цветы с использованием конструктора без параметров, с параметрами и конструктора с копированием
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
#include <string.h>
#include <tchar.h>
#include <iostream.h>
class Flowers
{private:
    char * vid;
    int number;
    public:
     Flowers();
     Flowers(char *, int);
     Flowers(Flowers &);
     void set_vid(char*);
     char * get_vid();
     void set_number(int);
     int get_number();
     void show();};
 
    Flowers::Flowers()
    {strcpy(vid," ");
     number=0;
    }             ;
 
    Flowers::Flowers(char * S,int n)
     {strcpy(vid,S);
      number = n;}   ;
 
    Flowers::Flowers(Flowers &c)
     {number=c.number;
      strcpy(vid,c.vid);
     }             ;
    void Flowers::set_vid(char*S)
        {strcpy(vid,S);};
    char*Flowers::get_vid()
          {return vid;};
 
    void Flowers::set_number(int n)
    {number=n;};
    int Flowers::get_number()
    {return number;};
 
    void Flowers::show()
     {cout<<vid;
      cout<<number;};
 
int _tmain(int argc, _TCHAR* argv[])
{      int a;
  Flowers f1;
  f1.show();
  Flowers f2("ромашка",1);
  f2.show();
  Flowers f3(f2);
  f3.show();
  cin>>a;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2011, 02:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описать класс используя 3 вида конструкторов (C++):

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

Определить класс «Строка» – String длины n; написать несколько конструкторов - C++
Определить класс «Строка» – String длины n. Написать несколько конструкторов, в том числе конструктор копирования. Реализовать методы для...

Разработать класс для массива строк c наличием нескольких конструкторов и деструктора - C++
Разработать класс для массива строк. Написать несколько конструкторов, в том числе конструктор копирования. Реализовать методы для...

Описать класс "хэш-таблица", используя unordered_set и заданную хэш-функцию - C++
Здравствуйте. Есть класс объектов и ключ сравнения: #pragma once #include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;list&gt; #include...

Разработать класс Tableware (посуда) и производный класс Dish (тарелка). Описать атрибуты - C++
Разработать класс Tableware (посуда) и производный класс Dish (тарелка). Описать атрибуты.

Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты. - C++
Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты.

2
Сыроежка
Заблокирован
01.12.2011, 02:41 #2
STyDeNTuK, Уточните, что значит "выдает прекращение программы"?!
0
Bers
Заблокирован
01.12.2011, 06:41 #3
Цитата Сообщение от STyDeNTuK Посмотреть сообщение
Компилятор у меня по идее кривой, ошибку не пишет а просто выдаёт прекращена работа программы Project1.exe
Помогите понять в чём проблема.
Не кивай на зеркало, коли рожой не вышел.
Далеко не все типы ошибок компилятор способен выявить на этапе компиляции.
Есть ещё ошибки в ран-тайме.
То есть, это ошибки программиста, которые приводят к крушению программы, когда она уже запущена на выполнение.


Тыкаемся в первый попавшийся конструктор:

C++
1
2
3
4
Flowers::Flowers()
 {strcpy(vid," ");
number=0;
 }  ;

Попытка записи данных по адресу, который содержит инициализированный мусором указатель.
Ты считаешь, это так и должно быть?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.12.2011, 06:41
Привет! Вот еще темы с ответами:

Структура/класс "Студент". Применение конструкторов - C++
Не используя функции стандартной библиотеки Си для работы со строками, кроме указанных написать собственную функцию ,реализующую алгоритм....

Реализовать класс Goods используя для представления цены класс Money - C++
Реализовать класс Goods (пункт 1 ), используя для представления цены класс Money с пункта 2 Реализовать метод уценки товара, уменьшая цену...

Реализовать класс Money, используя класс Fraction - C++
// реализовать класс Money используя класс Fraction #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;sstream&gt; #include...

Протабулировать функцию, используя три вида циклов - C++
Используя три различных цикла, трижды протабулировать функцию. Задачу и формулы надо полностью переписывать! Редактор формул внизу...


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

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

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