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

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

Войти
Регистрация
Восстановить пароль
 
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
#1

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

14.09.2010, 18:44. Просмотров 894. Ответов 8
Метки нет (Все метки)

Помогите написать программу, пожалуйста! ( 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...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.09.2010, 18:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Класс, обьект, имя, enum.. (C++):

Получить имя обьекта из enum - C++
у меня есть клас SoundDevice в нем 2 указателя на объекты player и recorder. class SoundDevice{ Player *player; Recorder...

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

Нюансы синтаксиса: что означает запись return класс (имя, имя) ? - C++
Добрый день! Столкнулся в одном из кодов (приводится ниже, из книги Лафоре) с незнакомым мне синтаксисом. return time12(pm, hrs12,...

Разработать класс, обьект которого реализует "пользовательский" тип данных - C++
Помогите сдать экзамен, не было времени подготовится) могу даже оплатить работу если угодно. Задача Разработать класс, обьект...

Создать класс Man (человек), с полями: имя, возраст, пол и вес. Создать производный класс Student ... - C++
Создать класс Man (человек), с полями: имя, возраст, пол и вес. Определить методы задания имени, возраста и веса. Создать производный класс...

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

8
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.09.2010, 18:59 #2
Arl, char *name[30]; или char name[30];
0
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 20:10  [ТС] #3
Lavroff, у меня же вроде так и написано? Или надо по-другому??
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.09.2010, 20:12 #4
Ой ой ой. char*name или char name[30] всмысле, а не char*name[30];
1
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 20:38  [ТС] #5
Lavroff, спасибо! исправил! Мне еще вот аткую ошибку выдает:
Product::Benefits: нет переменных, объявленных перед '='
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.09.2010, 20:41 #6
Arl, Естественно... Benifits это перечисление. Прочитайте что это такое.
0
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 20:56  [ТС] #7
Lavroff, я читал!! но когда я пишу просто Yes или "Yes", оно мне пишет ,что это неизвестный идентификатор(((
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.09.2010, 23:03 #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;
}
1
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
14.09.2010, 23:50  [ТС] #9
Lavroff, круто!! спасибо огромное!! ))
0
14.09.2010, 23:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2010, 23:50
Привет! Вот еще темы с ответами:

Создать класс - человек, у которого есть имя и возраст. - C++
Создать класс - человек, у которого есть имя и возраст. Определить функцию которая установит имя и возраст по умолчанию. Помогите! Вот...

Enum == int !=enum? - C++
enum Flags{ Flag1 = 1, Flag2 = 2}; int main() { Flags a = Flag1, b = Flag2; a = a | b; } error C2440: =: невозможно...

Создать класс Person для ввода фамилии и имя человека - C++
Здравствуйте. Что-то не получается, ошибки выскакивают, именно в заголовочном файле при определении функций read() и print(). ...

Наследование: Создать класс человек, имеющий имя, возраст, вес - C++
Создать класс человек, имеющий имя (указатель на строку), возраст, вес. Определить конструкторы, деструктор и оператор присваивания....


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

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

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