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

Запись в поля класса через вспомогательный класс. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дана неограниченая последовательность положительных чисел http://www.cyberforum.ru/cpp-beginners/thread128473.html
дана неограниченная последовательность положительных чисел. выяснить, самое максимальное число и сколько раз оно было введено. заранее благодарю))))(если можно,самый простой вариант решения этой...
C++ Функция... Заменить каждый элемент на среднее арифметическое его и его соседей слева и справа... вот я сделал через одномерный массив void main () {const n=5; float A; float B; int i; for (i=0;i<n;i++)... http://www.cyberforum.ru/cpp-beginners/thread128464.html
Описать структуру студенты, содержащую информацию о студентах группы C++
Описать структуру студенты, содержащую информацию о студентах группы: фамилия, имя, отчество, год рождения, курс, форма обучения. Создать массив таких структур и заполнить его. По запросу...
Рекурсия. Заливка C++
Написать функцию заливки, используя закон 1 4 * 2 3 (единица и тройка над звёздочкой и под звёздочкой соответственно) Начальная точка – (100-9*10;100-9*10). Из...
C++ Обьясните прогграмму со структурами http://www.cyberforum.ru/cpp-beginners/thread128457.html
#include "stdafx.h" #include <stdio.h> #include <conio.h> #include <string.h> #include <iostream> #define a 1 using namespace std; /* Описание структуры, которая представляет монастырь */...
C++ Файловые потоки. Подскажите, где ошибка Добрый день! Помогите разобраться, плиз: суть задачи в подсчете количества ненулевых элементов в заранее заготовленном файле. Вот что я написал: #include <iostream.h> #include <fstream.h>... подробнее

Показать сообщение отдельно
Sergey_O
5 / 5 / 1
Регистрация: 09.12.2009
Сообщений: 65

Запись в поля класса через вспомогательный класс. - C++

12.05.2010, 11:48. Просмотров 473. Ответов 3
Метки (Все метки)

Сам класс:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once
#include <iostream>
class User
{
private:
    char *_Surname;
    char *_Name;
    char *_SecondName;
    char *_TelephoneNumber;
    char *_Login;
    char *_Password;
    int Identificator;
public:
    User(void){};
    void name_get(char *src);
    void surname_get(char *src);
    void secondname_get(char *src);
    void telnumber_get(char *src);
    void login_get(char *src);
    void pass_get(char *src);
    void id_get(int id);
    ~User(void);
};
Определение методов:
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 "User.h"
 
#include <iostream>
using namespace std;
 
User::~User(void)
{
}
 
void User::name_get(char *src)
{
    _Name = new char[strlen(src)];
    strcpy(_Name,src);
}
 
void User::secondname_get(char *src)
{
    _SecondName = new char[strlen(src)];
    strcpy(_SecondName,src);
}
 
void User::surname_get(char *src)
{
    _Surname = new char[strlen(src)];
    strcpy(_Surname,src);
}
void User::telnumber_get(char *src)
{
    _TelephoneNumber = new char[strlen(src)];
    strcpy(_TelephoneNumber,src);
}
void User::login_get(char *src)
{
    _Login = new char[strlen(src)];
    strcpy(_Login,src);
}
void User::pass_get(char *src)
{
    _Password = new char[strlen(src)];
    strcpy(_Password,src);
}
void User::id_get(int id)
{
    Identificator = id;
}
Вспомогательный класс, который должен заполнять поля USERа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class enter
{
public:
void get(User src)
{
    char *temp = new char[20];
    char *def = new char[20];
    cout<<"Name: ";scanf("%s",&temp);
    src.name_get(temp);
    cout<<"Second name: ";scanf("%s",&temp);
    src.secondname_get(temp);
    cout<<"Surname: ";scanf("%s",&temp);
    src.surname_get(temp);
    cout<<"Tel number: ";scanf("%s",&temp);
    src.telnumber_get(temp);
    //delete temp;
    cout<<"Login: ";scanf("%s",&def);
    src.login_get(def);
    cout<<"Password: ";scanf("%s",&def);
    //delete def;
}
Как я понял, функция ввода отлично работает, но если потом делать вывод полей - программа вылетает, вроде как из-за того, что поля оказываются пустыми.

Буду благодарен за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru