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

Метод не правильно выводит значения полей. Подскажите - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Макс кол-во различных символов(строки) http://www.cyberforum.ru/cpp-beginners/thread694703.html
Строка состоит из слов. За один просмотр символов строки найти все слова, содержащие наибольшее количество различных символов, и занести их в новую строку.
C++ Указатели в масивах Есть такая задача: поменять местами элементы матрицы A=(a), i=j=1,2,...,n по такому правилу: первый сделать последний, второй предпоследним и т. д. Решить задачу нужно двумя способами: при помощи индексации масивов и при помощи указателей. Первым способом решить получилось, а вот со вторым не понимаю, что делать. Помогите, пожалуйста, трансформировать код нужным образом. #include... http://www.cyberforum.ru/cpp-beginners/thread694671.html
C++ Запуск конструктора родителя в дочернем конструкторе
Вобщем имеется два класса class Coma{ public: double x,y; Coma(){ x=0; y=0; } Coma(int x, int y){ this->x=x;
C++ Как окрасить в цвет фигуру, траекторию, область
Как мне передать все значения моих точек в одно поле, которому в последствие мы зададим цвет, учитывая способы рисования моей траектории и фигуры?
C++ Разработать битовое поле, описывающее состояния элементов прибора http://www.cyberforum.ru/cpp-beginners/thread694649.html
Задание: Разработать битовое поле, описывающее состояния элементов прибора. Ввести с консоли число в 16-ричной системе счисления, преобразовать его в битовое поле за счёт использования объединения. Вывести на консоль состояния элементов прибора, соответствующие состоянию битов во введённом числе. Варианты приборов и их элементов:ADSL модем. Элементы: DSL вкл/выкл, PPP вкл/выкл, Link вкл/выкл. ...
C++ Создание двумерного динамического массива Нужно разработать консольное приложение в Visual Studio (использую 2010), которое вводит c клавиатуры двумерный массив целых чисел. Вот сам код. #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv) { int N, M; cout <<"Strings="<<endl; подробнее

Показать сообщение отдельно
Eugen-S
 Аватар для Eugen-S
8 / 8 / 0
Регистрация: 06.11.2011
Сообщений: 122
11.11.2012, 18:41     Метод не правильно выводит значения полей. Подскажите
День добрый, Киберфорум!
Вобщем, суть в чем: есть класс студент, класс группа. В классе группа - поле - вектор студентов. Когда запускаю , ввожу данные студента, запихиваю в вектор и пытаюсь потом из вектора вывести инфу о студенте - не хочет правильно работать.

Вот основной код ( то что используется)

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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
class student
{
    string name;
    float mark;
public:
 
    void setStudent()
    {
        cout<<"Введите имя студента и его оценку."<<endl;
        cin>>name;
        cin>>mark;
    };
 
    void prtStudInfo()
    {
        cout<<"Имя студента: "<<this->name<<endl;
        cout<<"Средний балл студента: "<<this->mark<<endl;
    };
};
 
class group
{
    vector <student> students;
    int size;
    string name;
public:
 
    group(int s,string n)
    {
        size = s;
        name = n;
        for(int i=0; i<size; i++)
            {   
                student buf;
                buf.setStudent();
                students.push_back(buf) ;
            };
    };
 
    void prtGroupInfo()
    {
        int flag = 0;
 
        cout<<"Название группы: "<<name<<endl;
        cout<<"Размер группы: "<<size<<endl;
        cout<<"1: Вывести информацию о каждом студенте.   2: Продолжить  без вывода."<<endl;
        cin>>flag;
        if(flag == 1)
        {
                for(int i=0; i<size; i++)
                    students[i].prtStudInfo();
        };
        cout<<"\nГотово."<<endl;
    };
 
 
};
 
void main()
{
    setlocale(LC_CTYPE,"Russian");
 
    int size = 0;
    string name;
 
    cout<<"Добро пожаловать."<<endl;
    cout<<"Введите название группу и количество студентов: "<<endl;
    cin>>name;
    cin>>size;
 
    group my(size,name);
    my.prtGroupInfo();
 
};
Ставил проверку, после ввода данных, перед "запихиванием" в вектор, вывести инфу - выводит без проблем. Когда обращаюсь уже в векторе - не выводит вообще значения поля "имя" , а "оценку" как-то странно, другое число вообще... Пробовал обращаться к элементам вектора через .at(); всё равно, то же самое. Подскажите пожалуйста в чем проблемка

Добавлено через 1 час 28 минут
Оказывается у друга на 11й студии всё отлично работает . 10я и 12я студии не хотят правильно работать. В чем проблема?

Добавлено через 19 минут
спасибо тем кто читал. Проблема была в конструкторе копии. торопился - забыл кое-что поставиь там. )
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru