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

Ошибка в организации класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Описать функцию, которая формирует список Common http://www.cyberforum.ru/cpp-beginners/thread648898.html
В составе программы описать функцию, которая формирует список Common, включив в него элементы, которые входят одновременно в список М1 и М2. Помогите пожалуйста, ибо идей вообще нет, как это сделать...
C++ Необходимо вернуть значение функции из Булевского значения и посчитать факториал Стоит задача- Написато программу которая спрашивает пользователя - Рост, вес, и возраст а затем выдаёт размер одежды по след. формулам: 1) Hat_size = вес/Рост*2.9; 2) Jacket_size = вес*Рост/288 и прибавить поправку 1/8 к каждым 10 over 30. (первая поправка вводится если возвраст 40); 3) Waist = вес/5.7 и прибавить поправку 1/10 к каждым 2-х годам over 28 (первая поправка вводится если... http://www.cyberforum.ru/cpp-beginners/thread648875.html
Как работает итератор? C++
for(vector<string>::iterator iter=vec1.begin();iter!=vec1.end();++iter) *iter=""; вот такой вот пример разбираю, первая строчка предельно ясна, но вот вторая.... понятно что обнуляет, но откуда взялся *iter ? а он так точно знает что ему стирать и как, хм, странно все это... Добавлено через 1 минуту *iter до этого нигде не определялся, не объявлялся...
C++ Напечатать все различные слова, указав для каждого из них число его вхождений в последовательность
Помогите пожалуйста решить задачу: Дана последовательность, содержащая несколько слов, разделенных пробелами, за последним словом - точка. Напечатать все различные слова, указав для каждого из них число его вхождений в последовательность. Например, стол компьютер яблоко компьютер стол шкаф. стол - 2 компьютер - 2 яблоко - 1 шкаф - 1 Желательно не использовать класс string.
C++ Может ли вообще на практике возникнуть ситуация, когда определенный класс следует указывать как друго самого себя? http://www.cyberforum.ru/cpp-beginners/thread648865.html
Может ли вообще на практике возникнуть ситуация, когда определенный класс следует указывать как друго самого себя?
C++ Запрет ввода символов в поле Edit Как запретить нажатие и вставку из буфера всех символов, кроме нужных мне, к примеру разрешить вводить в поле только цифры? И еще 2-ой вариант, как отдельный, как запихать в переменную char или еще в какую Edit->Text в виде массива символов, так что бы можно было сравнить каждый символ в массиве с таблицей символов по коду и определить есть ли запрещенные символы? Какими способами можно... подробнее

Показать сообщение отдельно
scotty
28 / 28 / 1
Регистрация: 09.09.2012
Сообщений: 131

Ошибка в организации класса - C++

09.09.2012, 12:10. Просмотров 311. Ответов 2
Метки (Все метки)

Мои первые попытки написать консольную версию пошагового боя обвенчались неудачей в самом начале. При тестовых ударах в цикле for увидел что очки жизней персонажа не уменьшаются, тк кк задумывалось.
Начинаю подозревать что нужно использовать указатели, но это тоже не обвенчалось успехом, посоветуйте пожалуйста что нужно сделать чтобы из класса P2 переменная hp начала уменьшаться а не обнулялась в 100.
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
#include <iostream>
#include <conio.h>
#include <string>
 
using namespace std;
 
class PERS
{
private:
    int hp;
    string name;
public:
    PERS(): hp(100), name("Player2")
    {}
    PERS(string nm): hp(100), name(nm)
    {}
    void attack(PERS P2)
    {
        int damage=rand()%10;
            while (damage==0)
            damage=rand( )%10;
        int heal=P2.hp;
        heal-=damage;
        P2.*hp=heal;
        cout<<"Персонаж "<<name<<" нанес урона: "<<damage<<endl;
        cout<<P2.hp<<endl;
        
    }
};
 
int main ()
{
    setlocale( LC_ALL,"Russian" );
    PERS P2;
    string name;
    cout<<"Введите имя персонажа: ";
    cin>>name;
    PERS P1(name);
    for(int i=0;i<10;i++)   //для примера что урон считает и типо не равняется нулю....буду без 
    {P1.attack(P2);      //промахов пока-что
    
    }
    getch();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru