Здравствуйте, TARGRED, Вы писали:
TAR>TAR>#include <iostream>
TAR>#include <cstring>
TAR>class Katalog;
TAR>#pragma hdrstop
TAR>#pragma argsused
TAR>//---------------------------------------------------------------------------
TAR>class Katalog
TAR>{
TAR> int i,sz;
TAR> int* name_book;
TAR> int* name_autor;
TAR> int* summ_books;
TAR> public:
TAR> Katalog()
TAR> {
TAR> i = 0;
TAR> sz = 10000;
TAR> name_book = new int[sz];
TAR> name_autor = new int[sz];
TAR> summ_books = new int[sz];
TAR> }
А в деструкторе ты эти динамические массивы удаляешь?
TAR> void Katalog::new_book()
TAR> {
TAR> std::cin>>name_book[i];
TAR> std::cin>>name_autor[i];
TAR> std::cin>>summ_books[i];
TAR> }
TAR> void Katalog::console_books()
TAR> {
TAR> for(int b=0; b<i;b++)
TAR> {
TAR> std::cout<<"Êíèãà: "<<name_book[i]<<" Àâòîð: "<<name_autor[b]<<" Êîëè÷åñòâî ýêçåìïëÿðîâ:"<<summ_books[b];
TAR> }
TAR> }
TAR>}
TAR>int main(int argc, char* argv[])
TAR>{
TAR> Katalog* kat = new Katalog();
TAR> if(std::cin=="Help")
Если ты ввел тут New, то сравнение не прошло и перескакивается на следующий else if, но в очереди клавиатуры "New" уже нету, поэтому придется вводить New второй раз. А это - нихт гут.
TAR> {
TAR> }
TAR> else if(std::cin=="New")
TAR> {
kat->> new_book();
TAR> }
TAR> else if(std::cin=="Window")
TAR> {
kat->>console_books();
TAR> }
TAR> else
TAR> {
TAR> std::cout<<"Error ";
TAR> }
TAR> return 0;
TAR>}
TAR>
TAR>Показывает, что слишком много типов указано и выдает ERROR
TAR>КАК БЫТЬ?