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

C++ файлы ifstream/ofstream запись класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ while ( не нажата клавиша) http://www.cyberforum.ru/cpp-beginners/thread928719.html
Есть цикл while. Нужно что б цикл заканчивал виполнение если нажата клавиша ... Добавлено через 9 секунд клавиша любая
C++ TiffLib пытаюсь отрыть файл этой либой, но мне пишет в консоль "Deflate compression support is not configured.". Я так понимаю не нужно пересобрать либу с какимито параметрами. Может кто работал с библиотека отзовитесь плис. П.С. компилятор msvc 2010 http://www.cyberforum.ru/cpp-beginners/thread928702.html
C++ Пузырьковая сортировка
Помогите плз. Работаю в Visual Studio 2010. Написал алгоритм пузырьковой сортировки, но когда запускаю вместо одной из цифр выводится самое маленькое из возможных чисел (-858993460). В чем ошибка не знаю. Вот код : #include "stdafx.h" #include <iostream> #include <fstream> using namespace std; int main()
Ошибка на стадии выполнения ptr = ptr; C++
class CObject { friend Parser; // много полей методов, все должны заполняться в парсере } class Parser { CObject * object_ public:
C++ Как поменять значение регистра? http://www.cyberforum.ru/cpp-beginners/thread928659.html
У меня есть регистр, который определяет место, в котором программа останавливается перед заходом в функцию. Мне нужно шагнуть на следующее место, где эта функция вычисляется. ADDRINT InstPtr = (ADDRINT)PIN_GetContextReg( ctxt, REG_INST_PTR ); ADDRINT NewInstPtr = InstPtr + 1; Вторая строчка написана не правильно, но как шагнуть на это значение регистра, я не знаю.
C++ W8054 Style of function definition is now obsolete При выполнении кода возникает предупреждение, о том, что я использую старый стиль объявления функций. Раньше таких предупреждений не получал. Здесь точно в стиле проблема? Предупреждение: W8054 Style of function definition is now obsolete //--------------------------------------------------------------------------- #include <vcl.h> #include <iostream> #pragma hdrstop ... подробнее

Показать сообщение отдельно
alex1392
31 / 31 / 3
Регистрация: 24.07.2013
Сообщений: 187
25.07.2013, 17:45     C++ файлы ifstream/ofstream запись класса
Доброе время суток дамы и господа необходимо помочь ибо что-то голова не варит ))
класс
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
#pragma once
#include <iostream>
using namespace std;
class date
{
    int day;
    int mounth;
    int year;
public:
    date();
    date(int d,int m,int y);
    date(const date&a);
    
    void set_day(int d);
    void set_mounth(int m);
    void set_year(int y);
 
    int get_day()const;
    int get_mounth()const;
    int get_year()const;
 
    void show();
    friend ostream& operator<<(ostream& os,date& a);
    friend ofstream& operator<<(ofstream&fs,date&a);
    friend ifstream& operator>>(ifstream&fs,date&a);
};
реализация
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
#include <iostream>
#include "date.h"
using namespace std;
    date::date()
    {
        day=0;
        mounth=0;
        year=0;
    }
    date::date(int d,int m,int y)
    {
        day=d;
        mounth=m;
        year=y;
    }
    date::date(const date&a)
    {
        day=a.get_day();
        mounth=a.get_mounth();
        year=a.get_year();
    }
    
    void date::set_day(int d)
    {
        day=d;
    }
    void date::set_mounth(int m)
    {
        mounth=m;
    }
    void date::set_year(int y)
    {
        year=y;
    }
 
    int date::get_day()const
    {
        return day;
    }
    int date::get_mounth()const
    {
        return mounth;
    }
    int date::get_year()const
    {
        return year;
    }
    void date::show()
    {
        cout<<day<<","<<mounth<<","<<year<<endl;
    }
запись/считывание/вывод
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
ostream& operator<<(ostream& os, date& a)
{
    os<<a.day<<",";
    os<<a.mounth<<",";
    os<<a.year<<endl;
    return os;
}
ifstream& operator>>(ifstream&fs,date&a)
{
    int sz=0;
 
    fs.read((char*)&sz, sizeof(int));
    fs.read((char*)&a.day,sz);
 
    fs.read((char*)&sz, sizeof(int));
    fs.read((char*)&a.mounth,sz);
 
    fs.read((char*)&sz, sizeof(int));
    fs.read((char*)&a.year,sz);
    return fs;
}
ofstream& operator<<(ofstream&fs,date&a)
{
    int sz=sizeof(int);
    fs.write((char*)&sz,sizeof(sz));
    fs.write((char*)&a.day,sz);
 
    fs.write((char*)&sz,sizeof(sz));
    fs.write((char*)&a.mounth,sz);
 
    fs.write((char*)&sz,sizeof(sz));
    fs.write((char*)&a.year,sz);
    return fs;
}
майн
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void main()
{   
    date z(6,10,1991);
    date m(26,10,1986);
    ofstream f("date.bin");
    f<<z;
    f<<m;
    f.close();
 
    date z1;
    date z2;
    ifstream f1("date.bin");
    
        f1>>z1;
        f1>>z2;
        cout<<z1<<endl;
        cout<<z2<<endl;
    
    f1.close();
вроди все основное кинул )) Подскажите плиз почему 1-вое считывает норм. а все последующее нет((
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru