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

Класс, обьект, имя, enum.. - C++

Восстановить пароль Регистрация
 
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 18:44     Класс, обьект, имя, enum.. #1
Помогите написать программу, пожалуйста! ( Visual studio 2005, 2008 C++)
Задача: Создать класс "товар": название, наличие скидки. (ф-кции ввода названия, наличия скидки и вывода).
Проблема с названием(( Надо создавать динамический массив символов?
Вот что у меня пока есть и не работает:

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<iostream>
using namespace std;
 
class Product
{
    char *name[30];
    //enum Benefits {Yes, No};
public:
    enum Benefits {Yes, No};
    //Constructors and Destructor
    Product();
                Product(char[20], Benefits);
    //Product(char[20]);
    Product(const Connection &k)
    {
        cout<<"copy constructor"<<endl;
    };
    ~Product(){};
    //methods
    void Add_Name(char*);
    void Set_Benefits(char*);
    char Get_Name();
    char Get_Benefits();
    void Show();
};
 
    void Product::Add_Name(char*)
    {
        char *d=new char[30];
        Name=d;
    };
 
    void Product::Set_Benefits(char f[5])
    {
        Benefits=f;
    };
 
    char Product::Get_Name()
    {
        return *Name[30];
    }
 
int main()
{
    Product  c2, c3, c4, c5;
    cout<<"hello"<<endl;
    Product::Product();
    
    //if Benefits=="Yes" 
    //{ cout<<"There are benefits"<<endl; }
    if (Product::Yes) { cout<<"There are benefits"<<endl;}
    getchar();
    return 0;
}
Не могу понять как записать это имя для обьекта из класса( И что делать с enum...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.09.2010, 18:59     Класс, обьект, имя, enum.. #2
Arl, char *name[30]; или char name[30];
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 20:10  [ТС]     Класс, обьект, имя, enum.. #3
Lavroff, у меня же вроде так и написано? Или надо по-другому??
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.09.2010, 20:12     Класс, обьект, имя, enum.. #4
Ой ой ой. char*name или char name[30] всмысле, а не char*name[30];
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 20:38  [ТС]     Класс, обьект, имя, enum.. #5
Lavroff, спасибо! исправил! Мне еще вот аткую ошибку выдает:
Product::Benefits: нет переменных, объявленных перед '='
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.09.2010, 20:41     Класс, обьект, имя, enum.. #6
Arl, Естественно... Benifits это перечисление. Прочитайте что это такое.
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 20:56  [ТС]     Класс, обьект, имя, enum.. #7
Lavroff, я читал!! но когда я пишу просто Yes или "Yes", оно мне пишет ,что это неизвестный идентификатор(((
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.09.2010, 23:03     Класс, обьект, имя, enum.. #8
Както так. Функционал сами настроете)

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
#include<iostream>
using namespace std;
 
class Product
{
        char name[30];
        enum Benefits {Yes, No};
public:
        //Constructors and Destructor
        Product(){};
        Product(char[], Benefits);
        //Product(char[20]);
        Product(const Product &k)
        {
                cout<<"copy constructor"<<endl;
        };
        ~Product(){};
        //methods
        void Add_Name();
        int Set_Benefits();
        const char*Get_Name() const;
        const int Get_Benefits() const;
        void Show();
};
 
        void Product::Add_Name()
        {
            std::cout<<"Enter name: ";
            std::cin.getline(name, 30);
        }
 
        int Product::Set_Benefits()
        {
                int sales;
                sales=Yes;
                return sales;
        }
 
        const char*Product::Get_Name() const
        {
                return name;
        }
 
int main()
{
        Product  c2;
        c2.Add_Name();
        std::cout<<"Name: "<<(c2.Get_Name())<<'\n';
        if (!c2.Set_Benefits()) { cout<<"There are benefits"<<endl;}
        getchar();
        return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2010, 23:50     Класс, обьект, имя, enum..
Еще ссылки по теме:

C++ Получить имя обьекта из enum
Создать функцию вывода, в которую можно передать обьект, и вывести имя обьекта и все его поля C++
Структура «Школьник»: фамилия, имя, отчество; класс; номер телефона; оценки по предметам C++

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

Или воспользуйтесь поиском по форуму:
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 23:50  [ТС]     Класс, обьект, имя, enum.. #9
Lavroff, круто!! спасибо огромное!! ))
Yandex
Объявления
14.09.2010, 23:50     Класс, обьект, имя, enum..
Ответ Создать тему
Опции темы

Текущее время: 10:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru