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

Создание классов и объектов - C++

Восстановить пароль Регистрация
 
Jekke
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 7
15.11.2013, 01:06     Создание классов и объектов #1
Написать программу создания класса.
File: Имя файла, Размер, Дата создания, Количество обращений. Определить возможно ли записать файл на CD-диск.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2013, 01:06     Создание классов и объектов
Посмотрите здесь:

C++ Взаимодействие объектов разных классов
C++ Создание коллекции объектов разных классов
C++ Создание классов и объектов
Генератор объектов классов C++
Объединения объектов классов C++
C++ Комопзиция объектов/иерархия классов
Создание классов и объектов C++
Композиция классов и объектов C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
stima
429 / 284 / 16
Регистрация: 22.03.2011
Сообщений: 923
Завершенные тесты: 1
15.11.2013, 02:36     Создание классов и объектов #2
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#include <ctime>
#include <fstream>
#include <iostream>
 
#include <sys/types.h>
#include <sys/stat.h>
 
#if !defined(UNIX)
#   define _stat stat
#endif
 
class file
{
 
public:
    file()
    {
    }
    
    explicit file(const std::string& name,
        std::ios_base::openmode openmode = std::ios_base::in | std::ios_base::out)
        : fs(name.c_str(), openmode), _name(name)
    {
    }
 
    void open(const std::string& name,
        std::ios_base::openmode openmode = std::ios_base::in | std::ios_base::out)
    {
        _name = name;
        fs.open(_name.c_str(), openmode);
    }
 
    void close()
    {
        fs.close();
    }
 
    bool is_open() const
    {
        return fs.is_open();
    }
 
    std::ostream& write(const char* s, size_t n)
    {
        return fs.write(s, n);
    }
 
    std::istream& read(char* s, size_t n)
    {
        return fs.read(s, n);
    }
 
    std::ostream& flush()
    {
        return fs.flush();
    }
 
    std::string name() const
    {
        return _name;
    }
 
    size_t size() const
    {
        struct stat sb;
        if (stat(_name.c_str(), &sb) == 0)
        {
            return sb.st_size;
        }
 
        return 0;
    }
 
    time_t time() const
    {
        struct stat sb;
        if (stat(_name.c_str(), &sb) == 0)
        {
            return sb.st_ctime;
        }
 
        return 0;
    }
    
private:   
    std::fstream fs;
    std::string _name;
};
 
int main()
{
    file fs("test", std::ios_base::out | std::ios_base::trunc);
    if (!fs.is_open())
    {
        std::cout << "Error when opening file: " << fs.name() << std::endl;
        return -1;
    }
 
    char hello[] = { "Hello World!" };
    fs.write(hello, sizeof(hello));
    fs.flush();
 
    time_t t = fs.time();
    std::cout << "File " << fs.name() << " was created at: " << ctime(&t); //ctime return with \n
    std::cout << "File " << fs.name() << " has size: " << fs.size() << std::endl;
    return 0;
}
Не понятно где хранить счетчик, поэтому реализуете сами.
Yandex
Объявления
15.11.2013, 02:36     Создание классов и объектов
Ответ Создать тему
Опции темы

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