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

Наследование от ofstream и перегрузка << - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать имитацию кассового аппарата для магазина http://www.cyberforum.ru/cpp-beginners/thread1498687.html
Здравствуйте, У меня задача написать имитацию кассового аппарата для магазина, я сделала, но к сожалению, никак не могу привести его в порядок с остатками, что нужно сделать, чтоб если остаток товара на складе был 0, чтоб не разрешало вводить количество, а то у меня вводиться и + еще и считает (, Спасибо, #include<iostream> #include<string> using namespace std; void main() {...
C++ Как соединить три строки char в одну? Должно было получиться к примеру Документ 1.txt был открыт.Не вышло. char* String1="Документ "; char* String2=OpenDialog1->FileName; char* String3=" был открыт"; char* ResultString=String1+String2+String3; Так не работает,а StrCat соединяет только две http://www.cyberforum.ru/cpp-beginners/thread1498661.html
C++ Игра крестики-нолик
Пишу игру крестики-нолики с хоть каким-то ИИ. Есть функция bot_attack и функция bot_def bool Game::bot_attack() { this->botAttack=false; //gor if((player_field==player_field) && (player_field==0)) { if(player_field==2) { return true;
Как написать программу-собеседника C++
Мне хотелось бы, чтобы кто-нибудь объяснил мне, как написать себе собеседника.
C++ Нахождение плотности вещества http://www.cyberforum.ru/cpp-beginners/thread1498635.html
Как должна выглядить структура, в который хранятся , например, название и плотности газов, чтобы при вводе в консоли имени газа, показывалась его плотность.Напишите шаблон, пожалуйста.Язык C++.
C++ Шифрование строки модифицированным шифром Цезаря помогите пожалуйста написать программу, реализующую шифрования вводимой строки модифицированным шифром Цезаря.. подробнее

Показать сообщение отдельно
vxg
Модератор
3145 / 1947 / 214
Регистрация: 13.01.2012
Сообщений: 7,438
20.07.2015, 12:30     Наследование от ofstream и перегрузка <<
Цитата Сообщение от VVildVVolf Посмотреть сообщение
тут проблема
у меня работает
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
//---------------------------------------------------------------------------
 
#pragma hdrstop
 
//---------------------------------------------------------------------------
#include <iostream>
#include <fstream>
#include <stdlib.h>
//---------------------------------------------------------------------------
class my_obj
{
public:
    void print(std::ostream &os)
    {
        os << 123 << std::endl;
    }
};
//---------------------------------------------------------------------------
class my_buf: public std::streambuf
{
private:
    std::ostream *ptr;
public:
    my_buf(std::ostream &os): ptr(&os) {}
private:
    std::string str;
    
protected:
    virtual int_type overflow(int_type __c = traits_type::eof())
    {
        str.append(1, traits_type::to_char_type(__c));
        return traits_type::not_eof(__c);
    }
 
    virtual int sync(void)
    {
        *ptr << str;
        str.clear();
        return 0;
    }
};
//---------------------------------------------------------------------------
class my_stream: public std::ostream
{
private:
    my_buf buf;
    
public:
    my_stream(std::ostream &os):
        std::ostream(0),
        buf(os)
    {
        this->init(&buf);
    }
};
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
    std::ofstream fos("12/out.txt");
    my_stream os(fos);
    my_obj obj;
    obj.print(os);
    obj.print(os);
    obj.print(os);
    system("pause");
    return 0;
}
//---------------------------------------------------------------------------
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru