Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 1
Регистрация: 22.10.2012
Сообщений: 69
1

Не срабатывает конструктор класса

19.07.2013, 00:55. Просмотров 949. Ответов 11
Метки нет (Все метки)

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
/* gamers.h */
#include <string>
class gamers
{
public:
    gamers()
    {
        std::string nickname = "Hety";
        std::string name = "Hety";
        money = 0;
    }
    void name_of_gamer(std::string nameformal)
    {
        name = nameformal;
    }
    std::string get_name_gamer()
    {
        return name;
    }
    void nickname_of_gamer(std::string nicknameformal)
    {
        nickname = nicknameformal;
    }
    std::string get_nickname_of_gamer()
    {
        return nickname;
    }
    void change_ballans_plus(int moneyformal)
    {
        int tmpmoney = get_ballans();
        tmpmoney = tmpmoney + moneyformal;
        tmpmoney = money;
    }
    void change_ballans_minus(int moneyformal)
    {
        int tmpmoney = get_ballans();
        tmpmoney = tmpmoney - moneyformal;
        tmpmoney = money;
    }
    int get_ballans()
    {
        return money;
    }
private:
    std::string name;
    std::string nickname;
    int money;
};
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <string>
#include "gamers.h"
int main()
{
    setlocale(0, "");
    gamers arr[10];
    std::string nickk;
    nickk = arr[0].get_name_gamer();
    std::cout << nickk <<std::endl; // Здесь по идее должно быть "Hety"
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.07.2013, 00:55
Ответы с готовыми решениями:

Конструктор класса не видит конструктор по умолчанию другого класса
Ошибка, естественно, в Classes.cpp, в строке 20. Ругается, что у класса TailNode нет конструктора...

Конструктор класса, конструктор копирования запускается не тот который нужен
Есть такой конструктор: Neuron::Neuron(int iType_activation_funk) { this-&gt;iType_act =...

Конструктор производного класса требует конструктор предка
Выдаёт вот такую вот ошибку: no matching function for call to 'Cube::Cube()' class Cube {...

Не срабатывает конструктор объекта
Здравствуйте, уважаемые форумчане. Это моё первое сообщение на форуме, поэтому прошу сильно не...

11
5474 / 4869 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
19.07.2013, 01:06 2
C++
1
2
3
4
5
6
gamers()
{
     nickname = "Hety";
     name = "Hety";
     money = 0;
}
1
0 / 0 / 1
Регистрация: 22.10.2012
Сообщений: 69
19.07.2013, 01:11  [ТС] 3
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
2
3
4
5
6
gamers()
{
     nickname = "Hety";
     name = "Hety";
     money = 0;
}
Спасибо)
0
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
19.07.2013, 10:08 4
Цитата Сообщение от M1ronz0r Посмотреть сообщение
Не срабатывает конструктор класса
а чтобы точно узнать срабатывает он или не срабатывает, то я обычно в конструкторе пишу такую строчку
C++
1
cout << "Конструктор" << endl;
если при запуске этой строки не будет, значит конструктор не срабатывает
0
Грамотный. Безпорно.
16853 / 9749 / 1878
Регистрация: 27.09.2012
Сообщений: 24,158
Записей в блоге: 2
19.07.2013, 10:09 5
Цитата Сообщение от BigLow Посмотреть сообщение
а чтобы точно узнать срабатывает он или не срабатывает
Можете привести пример, когда конструктор не срабатывает?
0
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
19.07.2013, 10:14 6
Croessmah, конструкторы разные бывают. есть по умолчанию, есть с аргументами, есть конструкторы копии. и тут неизвестно какой из них сработает)
0
Jesus loves me
Эксперт С++
5106 / 3119 / 352
Регистрация: 12.12.2009
Сообщений: 7,890
Записей в блоге: 2
19.07.2013, 10:18 7
Цитата Сообщение от BigLow Посмотреть сообщение
и тут неизвестно какой из них сработает)
Вообще не известно, компилятор же рандомно выбирает какой конструктор вызвать
2
Грамотный. Безпорно.
16853 / 9749 / 1878
Регистрация: 27.09.2012
Сообщений: 24,158
Записей в блоге: 2
19.07.2013, 10:18 8
Цитата Сообщение от BigLow Посмотреть сообщение
и тут неизвестно какой из них сработает)
Значит пора в раздел учебников "Hello World"
0
Модератор
Эксперт по электронике
8276 / 6135 / 822
Регистрация: 14.02.2011
Сообщений: 21,337
19.07.2013, 10:24 9
Цитата Сообщение от Croessmah Посмотреть сообщение
Можете привести пример, когда конструктор не срабатывает?
Нук это
объект не создали
а вообще сей способ хорош, когда в классе стопицот конструкторов и сам запутался какой вызывать

Добавлено через 3 минуты
Цитата Сообщение от BigLow Посмотреть сообщение
Croessmah, конструкторы разные бывают. есть по умолчанию, есть с аргументами,
хоть один конструктор создашь по умолчанию пропадает
а если сделаешь так
C++
1
2
Myclass::Myclass(){};
Myclass::Myclass(int a=0){};
получишь по рукам еше на этапе компиляции
потому что
C++
1
Myclass A;
неизвестно какой вызывать и компилятор тормознет
1
Грамотный. Безпорно.
16853 / 9749 / 1878
Регистрация: 27.09.2012
Сообщений: 24,158
Записей в блоге: 2
19.07.2013, 10:24 10
Цитата Сообщение от ValeryS Посмотреть сообщение
объект не создали
Ну дык тогда и вместо объекта кукиш
Цитата Сообщение от ValeryS Посмотреть сообщение
а вообще сей способ хорош, когда в классе стопицот конструкторов и сам запутался какой вызывать
Не спорю, полезно, но всё же нужно знать что пишешь, а то получается написал код а он работает неизвестно по какой причине
0
Модератор
Эксперт по электронике
8276 / 6135 / 822
Регистрация: 14.02.2011
Сообщений: 21,337
19.07.2013, 10:28 11

Не по теме:

Цитата Сообщение от Kastaneda Посмотреть сообщение
Вообще не известно, компилятор же рандомно выбирает какой конструктор вызвать
Ну как бы не совсем рандомно, он еще на фазу Луны смотрит:)



Добавлено через 1 минуту
Цитата Сообщение от Croessmah Посмотреть сообщение
Не спорю, полезно, но всё же нужно знать что пишешь, а то получается написал код а он работает неизвестно по какой причине
С этим то никто не спорит
но для обучения в самый раз, написал кучу конструкторов создал объект по разному и смотришь какой конструктор когда вызывается
0
Croessmah
19.07.2013, 10:31     Не срабатывает конструктор класса
  #12

Не по теме:

Цитата Сообщение от ValeryS Посмотреть сообщение
смотришь какой конструктор когда вызывается
Не совсем верная картина может получиться :)

0
19.07.2013, 10:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2013, 10:31
Привет! Вот еще темы с ответами:

Не срабатывает конструктор перемещения
Есть класс у которого удалён конструктор перемещения. Но тем не менее, при передаче обьекта данного...

Вызвать конструктор производного класса без конструктора базового класса
Здравствуйте! У меня есть базовый класс треугольник и производный класс равносторонний...

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

Создать конструктор копий и оператор присваивания для класса компьютер и члена класса марка
Создать конструктор копий и оператор присваивания для класса компьютер и члена класса марка. ...


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

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

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