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

Класс массив (Проект) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определение букв о в задаче , комментирование кода моей задачи http://www.cyberforum.ru/cpp-beginners/thread1050315.html
Прокомментируйте пожалуйста код задачи, а то не понятны некоторые аспекты. #include <cstring> #include <iostream> int strcc(const char* str) { int c = 0; int o_c = 0; int len = strlen(str);
C++ не удаляется элемент из массива Всем привет. Есть 2 ф-ции одна добавляет в конец массива новый елемент(работает нормально), а вторая должна удалять из массива любой елемент по заданному индексу(не работает). Вот собственно и эта функция. Кто нибудь знает как надо подправить код? int *del(int a,int &n) { int *p = new int;//Массив который меньше исходного на 1 елемент. int m,j=0; cout<<"Введите индекс элемента который... http://www.cyberforum.ru/cpp-beginners/thread1050310.html
C++ Дан текстовый файл
Дан текстовый файл. Напечатать в алфавитном порядке все слова из заданного файла, имеющие длину n.
массивы ошибка C++
выяснить, является ли квадратная матрица симметричной относительно главной диагонали. Программа вылетает, если я элементы для массива задаю #include <iostream> #include <stdlib.h> #include <time.h> #include <math.h> using namespace std;
C++ Вызов глобальной функции из объекта класса http://www.cyberforum.ru/cpp-beginners/thread1050299.html
Здравствуйте! Допустим, к примеру, имеется класс, который может хранить в себе адрес на функцию, а также метод который "запустит" эту функцию... #include <iostream> typedef void (*NEXT_Act)(); class RunFunc{ NEXT_Act nextAct; public: RunFunc(NEXT_Act next){ nextAct=next;
C++ Определить положение восьми ферзей на шахматной доске, при котором ни один ферзь не угрожает другому Напишите программу, использующую рекурсию, определяющую положение восьми ферзей на шахматной доске, при котором ни один ферзь не угрожает другому. подробнее

Показать сообщение отдельно
Pavlo-
1 / 1 / 0
Регистрация: 24.10.2012
Сообщений: 46
20.12.2013, 23:08     Класс массив (Проект)
Кликните здесь для просмотра всего текста
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
#pragma once
 
class Book
{
private:
    int BookID;
    char BookName[20];
    char BookAutor[30];
    char BookGenre[15];
    int BookPage;
    bool BookOn;
 
public:
    Book(void);
    Book(int _BookID, char * _BookName,char * _BookAutor,char * _BookGenre,int _BookPage,bool _BookOn = true);
    void SetData(int _BookID, char * _BookName,char * _BookAutor,char * _BookGenre,int _BookPage,bool _BookOn);
    void ShowData();
    int GetBookID() { return BookID;};
    char *GetBookName();
    char *GetBookAutor();
    char *GetBookGenre();
    int GetBookPage() { return BookPage; };
    bool GetBookOn() { return BookOn; };
    void SetBookOn(bool _BookOn) {BookOn = _BookOn; }; 
 
    ~Book(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
46
47
48
49
50
51
52
53
54
55
#include "Book.h"
#include <iostream>
 
Book::Book(void) : BookID(0), BookPage(0) , BookOn(true)
{
    strcpy_s(BookName,"");
    strcpy_s(BookAutor,"");
    strcpy_s(BookGenre,"");
}
 
Book::Book(int _BookID, char * _BookName,char * _BookAutor,char * _BookGenre,int _BookPage,bool _BookOn)
    : BookID(_BookID), BookPage(_BookPage), BookOn(_BookOn)
{
    strcpy_s(BookName, _BookName);
    strcpy_s(BookAutor,_BookAutor);
    strcpy_s(BookGenre,_BookGenre);
}
 
void Book::SetData(int _BookID, char * _BookName,char * _BookAutor,char * _BookGenre,int _BookPage,bool _BookOn)
{
    strcpy_s(BookName, _BookName);
    strcpy_s(BookAutor,_BookAutor);
    strcpy_s(BookGenre,_BookGenre);
    BookID = _BookID;
    BookPage = _BookPage;
    BookOn = _BookOn;
}
 
void Book::ShowData()
{
    std::cout << BookID << '\t' << BookName << '\t' << BookAutor << '\t' << BookGenre << '\t' << BookPage << '\t' << BookID << '\n';
}
 
char *Book::GetBookName()
{
    char *tmp = new char[strlen(BookName)+1];
    strcpy_s(tmp, strlen(BookName)+1, BookName);
    return tmp;
}
char *Book::GetBookAutor()
{
    char *tmp = new char[strlen(BookAutor)+1];
    strcpy_s(tmp, strlen(BookAutor)+1, BookAutor);
    return tmp;
}
 
char *Book::GetBookGenre()
{
    char *tmp = new char[strlen(BookGenre)+1];
    strcpy_s(tmp, strlen(BookGenre)+1, BookGenre);
    return tmp;
}
Book::~Book(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
#pragma once
#include "Book.h"
class Books
{
private:
    static const int MAX_BOOKS = 100;
    Book books[MAX_BOOKS];
    int NumOfBooks;
    bool IsUniqueNumber(Book _books);
    char MyFileName[40];
public:
    Books(void);
    bool AddBookData(Book _book);
    bool EditBookData(int ID, Book _book);
    void DelBookData(char *BookNumber);
    Book GetBookData(char *_Number);
    Book GetBookData(int ID);
    int Books::GetBookID(char *_Number);
    char *GetDBFileName();
    void SetDBFileName(const char *FileName);
    int GetNumOfBooks() { return NumOfBooks; };
 
    void WriteDataToFile(const char *FileName); 
    void ReadDataFromFile(const char *FileName);
    Book ReadRecordFromFile(const char *FileName, int recID);
    void EditRecordInFile(const char *FileName, int recID, Book _book);
    void WriteRecordToFile(const char *FileName, Book _book);
    Book &operator [] (int ID);
    
    ~Books(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
46
47
48
49
#include "Books.h"
#include <fstream>
#include <cstring>
 
Books::Books(void) : NumOfBooks(0) {}
/*
bool Books::IsUniqueNumber (Book _book)
{
    for(int i = 0; i < NumOfBooks ; i++)
    if (strcmp(books[i].GetBookID(), _book.GetBookID()) == 0)
        return false;
    return true;
}
 
// Тут помилка!
 
bool Books::AddBookData(Book _book)
{
    if (!IsUniqueNumber(_book)) return false;
    if (NumOfBooks < MAX_BOOKS-1)
    {       
        books[NumOfBooks] = _book;
        NumOfBooks++;
        return true;
    }
    else
        return false;
}
 
bool Books::EditBookData(int ID, Book _book)
{
    if (ID >= 0 && ID < MAX_BOOKS)
    {
        //if (cars[id].GetNumber() == _car.GetNumber() || IsUniqueNumber(_car))
        books[ID] = _book;
        return true;
    }
    else 
        return false;
}
 
void Books::DelBookData(char * _BookID)
{
 
}
*/
Books::~Books(void)
{
}

Здраствуйте мне нужно зделать класс массив. Я пробовал но есть ошибки и я незнаю что делать дальше. Помогите пожалуйста!
Кликните здесь для просмотра всего текста
Разработать информационную систему «Библиотека».
Описать классы Book и Reader.
Класс Book должен содержать поля с такой информацией: идентификатор книги, название книги, автор, жанр, количество страниц, статус (в наличии, выдано).
Предусмотреть функции:
1. добавления новой книги,
2. редактирования информации о книге,
3. удаления книги из базы,
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru