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

класс для представления понятия "контроллер видеомагнитофона" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ как опустить знак "-"? http://www.cyberforum.ru/cpp-beginners/thread39644.html
первые дни учебы с++ задали задачу пользователь вводит 2 значения радиусов и координаты х и y. нужно определить принадлежит ли данная точка данной области (между большим и меньшими кругами) само решение написал... геометрически я понимаю как его решить...но компилятор (MS VS 2008) ругается на l=sqrt(x+y); error C2668: 'sqrt' : ambiguous call to overloaded function подскажите направление...
C++ Лаба С++ Класс  однонаправленный список list Задание по лабе Класс  однонаправленный список list. Дополнительно перегрузить следующие операции:  доступ к элементу в заданной позиции, например: int i; Type c; list L; c=L; +  объединить два списка; !=  проверка на неравенство. как сделать ? http://www.cyberforum.ru/cpp-beginners/thread39642.html
C++ Опpеделить значения вещественного массива по правилу
через пару часов зачет а у меня много не сделанного 1 Дан вещественный массив C. Опpеделить значения вещественного массива D по следующему правилу: D=сумме i-й строки массива С, если C>0 и D=0 в противном случае. Значение переменной i изменяется от 0 до 4. 1. С клавиатуры ввести данные в массив С. 2. Определить массив D. 3. Вывести на экран исходный (введенный с ...
C++ Задание со списками
Есть задание со списками: В файловой системе каталог файлов организован как линейный список. Для каждого файла в каталоге содержатся следующие сведения: имя файла; дата создания; количество обращений к файлу. Составить программу, которая обеспечивает:
C++ Задана последовательность чисел длиной n. Определить минимальное и максимальное значение этой последовательности ... http://www.cyberforum.ru/cpp-beginners/thread39491.html
Задана последовательность чисел длиной n. Определить минимальное и максимальное значение этой последовательности ... В паскале вроде так - uses crt; var a:array of integer; i,n,max,min:integer; begin clrscr; writeln('n ');
C++ CGI и C++ Решил попросить помощи в объяснении моей курсовой. Всю работу свел к минимуму. Сейчас представлю вам простейший вид того что мне нужно. А нужно мне связать HTML форму с CGI-программой, написанной на C++. Вот HTML, сразу начну с записи формы <form action="/cgi/test.exe"> <input type=text name="a" size=6 maxlength=6> <input type=submit value="Обработать">&nbsp;<input type=reset... подробнее

Показать сообщение отдельно
LenaSV
0 / 0 / 0
Регистрация: 11.04.2009
Сообщений: 22

класс для представления понятия "контроллер видеомагнитофона" - C++

11.06.2009, 14:10. Просмотров 696. Ответов 5
Метки (Все метки)

класс для представления понятия "контроллер видеомагнитофона"(обеспечивает програмное управление видеомагнитофоном, который может осуществлять запись,вставить, извлечь кассету и проверить наличие кассеты, выполнять воспроизведение кассеты и осуществлть перемотку в указанном направлении
как здесь объявить копирующий конструктор, перегруженный оператор присваивания, inline и const в объявлениях методов и операторов
и манипулятор ввода и вывода в виде дружественных функций
magnitofon.h
Код
#ifndef MAGNITOFON_H
#define MAGNITOFON_H
#include <iostream>
#include <string>
#include <vector>
#include <clocale>
using namespace std;
class magnitofon
{
 private: 
   magnitofon();           // Конструктор    
   ~magnitofon(); //деконструктор 
   bool play, stop, rec, kasset, kaseta;        // Процессы: воспроизведение, запись и наличие кассеты
   int rew;                // Процесс перемотки (положительное число - вперёд на заданный интервал, 
public:
   magnitofon();           // Конструктор    
   void m_stop();       // Метод останавливает все процессы видеомагнитофона
   void m_play();       // Метод включает воспроизведение кассеты
   void m_rew(int interval);  // Метод перематывает кассету в заданном направление
   void m_rec();        // Метод начинает запись
   void insert();              // Метод вставляет кассету
   void get();               // Метод достаёт кассету      
   bool check();            // Метод проверяет, есть ли кассета
};
#endif // MAGNITOFON_H
magnitofon.cpp
Код
magnitofon::magnitofon()           // Конструктор
 {
    play = false;
    stop = false;       // По-умолчанию все процессы выключены
    rec = false;
    rew = 0;
    kasset = false;    // По-умолчванию кассеты нет
   }
magnitofon::~magnitofon()           // деконструктор
{
} 
 void magnitofon::m_stop()       // Метод останавливает все процессы видеомагнитофона
 {
    play = false;
    rec = false;
    rew = 0;
    }

 void magnitofon::m_play()       // Метод включает воспроизведение кассеты
 {
    m_stop();        // Может быть активен только один процесс, поэтому вызывается метод "Stop"
    play = true;
       }

 void magnitofon::m_rew(int interval)  // Метод перематывает кассету в заданном направление
 {
    m_stop();
    rew = interval;          // Перемотка на заданный интервал
   }

 void magnitofon::m_rec()        // Метод начинает запись
 {
    if (play) rec = true;  // Запись возможна только при включённом процессе play
     }

 void magnitofon::insert(int id)              // Метод вставляет кассету
{
    m_stop();
    kasset = true;
   }

 void magnitofon::get()                // Метод достаёт кассету      
{
    m_stop();
    kaseta = false;
    }

 bool magnitofon::check()            // Метод проверяет, есть ли кассета
 {
    return kasset;      // Возвращает true, если кассета есть, в противном случае false.
 }

};
main.cpp
Код
#include "magnitofon.h"

int main()
{
magnitofon m;
int x;
cout<<"----------Menu----------"<<endl;
cout<<"0. воспроизведение"<<endl;
cout<<"1. вставить кассету"<<endl;
cout<<"2.  извлечь кассету'"<<endl;
cout<<"3. проверить наличие кассеты"<<endl;
cout<<"4. запись"<<endl;
cout<<"5. перемотать на указанный интервал"<<endl;
cout<<"6. стоп"<<endl;
while (true)
{
   cin>>x;
   switch(x)
   { 
      case 0:
         m.play();
         break;
      case 1:
         m.insert();
         break; 
      case 2:
         m.get();
         break;
      case 3:
         if (m.check)
         { cout<<"Кассета есть"<<endl; }
         else
         { cout<<"Кассеты нет"<<endl; }
         break;
      case 4:
         m.m_rec();
         break;
      case 5:
         cout<<"Интервал: ";
         cin>>x;
         m.m_rew(x);
         break;
      case 6:
         m.stop();
         break;
   }
никак не получается это сделать
выходит только что-то вроде этого:
magnitofon.h
Код
..............................
magnitofon();
    magnitofon(unsigned a,unsigned b);
    magnitofon(const controller&original);
   friend std::istream & operator >> (std::istream&is,magnitofon & count);
    friend std::ostream& operator<<(std::ostream& os,const magnitofon & count);
    bool   ??
    inline ??
};


inline unsigned magnitofon::full()const{
    ???
}
magnitofon.cpp
Код
magnitofon::magnitofon(const magnitofon& orig):??
{}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru