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

Как правильно использовать классы? Как вывести значение класса на экран? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ С++ статистическая вероятность подбрасывание кубика http://www.cyberforum.ru/cpp-beginners/thread1125418.html
Помогите разобраться со статистической вероятностью. Программа легкая, но где-то ошиблась. Не могу понять, в чем накосячила. Смысл задачи в следующем: подбрасывают два кубика. Найти вероятность того, что сумма выпавших очков будет равна 8. Нужно вывести результаты вероятностей через каждые 30 испытаний. В результате он выводит 0. #include "clocale" #include "time.h" #include "iostream"...
C++ Приведение времени в минуты Реализовать внешнюю функцию с именем make_mun(), где mun – тип реализуемой структуры. Функция должна получать в качестве аргументов значения для полей структуры и возвращать структуру требуемого типа. При передаче ошибочных параметров следует выводить сообщение и заканчивать работу. Поле first – целое положительное число, часы; поле second – целое положительное число, минуты. Реализовать метод... http://www.cyberforum.ru/cpp-beginners/thread1125417.html
C++ Создать программу, которая выдает значения sin(x)
Создать программу на с++ которая выдает значения sin(x), х меняется от 0 до 5, с шагом 0,5; 1. нарисовать блок-схему
C++ STL. Заменить в строке S все вхождения подстроки S1 на подстроку S2
Даны строки S, S1 и S2 вводимые с клавиатуры. Требуется заменить в строке S все вхождения подстроки S1 на подстроку S2. (Например, "та-та-та", "та", "дыр" → "дыр-дыр-дыр").
C++ Почему в ответе inf ? http://www.cyberforum.ru/cpp-beginners/thread1125395.html
Уважаемые гуру, помогите решить проблему. Компилил программу из учебника Праты "Язык программирования С++ лекции и упражнения 2011" (Кстати, каково ваше мнение о данном учебнике?) Не пойму, почему в ответе вылезло "bmi=inf"? Вот код. #include <iostream> #include <cmath> int main () { using namespace std;
C++ Дан текст. Подсчитать количество слов в данной строке Дан текст. а) Подсчитать количество слов в данной строке. б) Подсчитать количество букв а в постанньму слове данной строки. в) Войти количество слов, которые начинаются с буквы В. г) Войти количество слов, в которых первый и последний символы одинаковы. д) Найти длину кратчайшего слова. Вот что есть у меня(пункты а и б) нужно допилить остальное. #include<iostream> #include<stdio.h>... подробнее

Показать сообщение отдельно
vlad3996
6 / 6 / 3
Регистрация: 27.10.2013
Сообщений: 14
21.03.2014, 01:19     Как правильно использовать классы? Как вывести значение класса на экран?
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 card {
    int ekz;
    char *zaglav;
    char *avtor;                //задание строки как char [] очень непрактично в классе... лучше string, ну или char*
public:
    void store(int ekz, char* zaglav, char* avtor);     //неплохо было бы написать конструкторы( с параметрами и без)+деструктор т.к. выделяется дин. память
    //card(); //в конструкторе без параметров можно создать "пустой экземпляр"
    //card (int e, char* zag, char* avt);
    //~card() {delete []zaglav; delete []avtor;
    void show();                                        //обычно пишутся отдельные методы set, get для отдельных полей
    //void setEkz(int e) {ekz=e;}                       //например такие
    //int getEkz() {return ekz;}
    friend ostream & operator <<(ostream &out, card &car);//а перегрузка операторов >>, <<  для ввода, вывода всего сразу
};
/*card::card (int e, char* zag, char* avt) 
{
    ekz=e;
    zaglav=new char[strlen(zag)+1];
    strcpy(zaglav,zag);
    avtor=new char[strlen(avt)+1];
    strcpy(avtor,avt);
}*/
void card::store(int e, char* zag, char* avt) 
{
    ekz=e;
    zaglav=new char[strlen(zag)+1];
    strcpy(zaglav,zag);
    avtor=new char[strlen(avt)+1];
    strcpy(avtor,avt);
}
ostream & operator <<(ostream &out, card &car)
{
    cout<<"ekz ="<<car.ekz<<endl<<"zaglav ="<<car.zaglav<<endl<<"avtor="<<car.avtor<<endl;
    return out;
}
 void card::show() {
   cout<<"ekz ="<<ekz<<endl<<"zaglav ="<<zaglav<<endl<<"avtor="<<avtor<<endl;
}
void main()
{
    card s1;
    s1.store(2, "NameTest", "AvtorTest");
    //card s2(2, "NameTest", "AvtorTest"); 
    cout << s1 << "\n";
    s1.show();
    cout << "Press the enter key to continue ...";
    cin.get();
}
 
Текущее время: 23:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru