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

Заполнение структуры в конструкторе - C++

Восстановить пароль Регистрация
 
Yana_
0 / 0 / 0
Регистрация: 08.05.2014
Сообщений: 9
08.05.2014, 23:19     Заполнение структуры в конструкторе #1
Нужно в конструкторе вызвать функцию заполнения структуры. Без цикла все работает, а вот с циклом даже в функцию похоже не заходит. Может есть какие у кого-нибудь соображения, что тут придумать можно?)
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
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <locale.h>
#include<Windows.h>
 
using namespace std;
 
//NameDataSet содержит имя клиента и номер кредитной карты
 
class NameDataSet
{
    public:
        char FirstName[100];
        char LastName [100];
        int CreditCard;
        NameDataSet()
        {
            int GetData();
        }
}nds;
int GetData(NameDataSet nds[])
{
    int i;
            setlocale(LC_ALL, "rus");
            FILE *f1;
            /*NameDataSet nds[3];*/
            f1=fopen("data.txt", "r");
            cout<<"hello";
            for (int i=0; i<3; i++)
            {
                fscanf(f1, "%s", &nds[i].FirstName);
                fscanf(f1, "%s", &nds[i].LastName);
                fscanf(f1, "%d", &nds[i].CreditCard);
                cout<<nds[i].FirstName<<" "<<nds[i].LastName<<" "<<nds[i].CreditCard<<"\n";
                
            }
            
        return 0;
}
 
        /*void GetData(void);*/
        
 
//void NameDataSet::NameDataSet()
 
void main ( )
 {
    setlocale(LC_ALL,"RUS");
     /*const int MAX=25;*/
     NameDataSet nds[3];
     /*NameDataSet n1;*/
     cout<<"Считывает имя/номер карты\n"
         <<"Введите'exit'в поле имени для выхода\n";
    //for(int i=0; i<3; i++)
    // {
    //   cout<<nds[i].FirstName;/*<<" "<<nds[i].LastName<<" "<<nds[i].CreditCard<<"\n";*/
    // }
 }
Вложения
Тип файла: txt data.txt (57 байт, 2 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2014, 23:19     Заполнение структуры в конструкторе
Посмотрите здесь:

C++ Заполнение структуры из файла
C++ Заполнение структуры через rand
Заполнение структуры C++
C++ Заполнение структуры значениями
Заполнение структуры через функцию C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4278 / 3709 / 1246
Регистрация: 14.04.2014
Сообщений: 14,503
08.05.2014, 23:41     Заполнение структуры в конструкторе #2
Что такое в 19-ой строке? Функция объявлена внутри функции или это вызов, но зачем там int тогда?
И где вызов конструктора?
Yana_
0 / 0 / 0
Регистрация: 08.05.2014
Сообщений: 9
08.05.2014, 23:46  [ТС]     Заполнение структуры в конструкторе #3
это вызов функции, вызов конструктора в 17-ой строке, согласна, int лишний)
nmcf
4278 / 3709 / 1246
Регистрация: 14.04.2014
Сообщений: 14,503
09.05.2014, 12:29     Заполнение структуры в конструкторе #4
В 17-ой строке он объявлен, а где его вызов? Обычно пишут что-то типа
C++
1
obj = new NameDataSet();
Yana_
0 / 0 / 0
Регистрация: 08.05.2014
Сообщений: 9
10.05.2014, 13:47  [ТС]     Заполнение структуры в конструкторе #5
спасибо) а что лучше передать в GetData? если передавать nds - подчеркивает...
nmcf
4278 / 3709 / 1246
Регистрация: 14.04.2014
Сообщений: 14,503
10.05.2014, 14:34     Заполнение структуры в конструкторе #6
Ничего передавать не нужно. Сделай её членом класса или вообще перенеси всё в конструктор.
Yandex
Объявления
10.05.2014, 14:34     Заполнение структуры в конструкторе
Ответ Создать тему
Опции темы

Текущее время: 05:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru