У меня есть домашнее задание, я думал, что это было просто, и я могу сделать это, не используя классы / объекты, но я думаю, я просто недостаточно хорошо понимаю классы / объекты, чтобы выполнить его так, как мой учитель просит меня сделать. 1001 *
Все это будет сделано с массивом целых чисел, длина которого всегда будет 20.
Назначение вызовов для 3 отдельных файлов:
1 заголовочный файл, book.h , содержащий элементы класса / функции-члены / прототипы) 1 .cpp файл, содержащий все функции-члены. Для этого я просто включу один пример (1 файл .cpp, который просто содержит int main и действует как то, что пользователь видит как интерфейс и вызывает функции-члены и т. Д.
//book.h
class Shelf{
public:
Shelf();
void insert(int);
int bookshelf[];
};
Теперь book.cpp, который содержит функции-члены (я действительно не знаю, нужен ли мне такой конструктор и могу ли я назвать массив тем же именем, что и массив в book.h?)
//book.cpp
#include <iostream>
#include "book.h"
const int shelfSize=20;
Shelf::Shelf(){
bookshelf[shelfSize];
for(int i=0; i <shelfSize; i++)
bookshelf[i]=0;
}
//inserts a book to the end of the list
void Shelf::insert(int booknum){
for(int i=0; i < shelfSize; i++)
bookshelf[i] = booknum;
}
Теперь book_main.cpp , который просто должен дать меню и запросить у пользователя:
//book_main.cpp
#include<iostream>
using namespace std;
#include "book.h"
int main(){
Shelf book; //creates a Shelf object named "book"
int isbn=0;
cout<<"Enter ISBN: "<<endl;
cin>>isbn;
book.insert(isbn);
return 0;
}
Теперь я понимаю, что эта логика не имеет особого смысла, кроме этой, в моей программе есть еще много чего. Я поливаю его, просто чтобы показать, с чем у меня проблемы.
1) Как мне настроить массив в моем объекте, функциях-членах и т. Д.? Я предполагаю, что мой дизайн функций ужасен, так же как неверное имя массива в файле, который содержит все функции-члены и т. Д. Любой совет будет оценен. Эта программа компилируется, но вылетает каждый раз, когда я вызываю book.insert ()