Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вылетает из компилятора при нажатие F9, Тестирую прогу на классы. 
V
    Опции темы
Atij
Дата 15.5.2008, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 13.4.2008

Репутация: нет
Всего: нет



Добрый день, вы не подскажите почему при нажатие кнопки F9 (Turbo C++) у мну вылетает из программы, я ведь даже не начианаю компиляцию. Просто тестирую на наличие ошибок. Вот код программы (то что происходит при нажатие кнопки F9 прикрепляю в качестве рисунка):

Код

#include<iostream.h>

class Point3
{
public:
Point3 (int i = 0,int i = 0 );
void setX(int);
int getX() const;
void setY(int);
int getY() const;
void ptint() const;
private:
int x;
int y;
};

Point3::Point3(int xValue,int yValue : x (xValue), y (yValue))
{}

void Point3::setX(int xValue)
{x=xValue}

int Point3::getX() const
{return x;}

void Point3::setY(int yValue)
{x=xValue}

int Point3::getY() const
{return y;}

void Point3::print() const
{ cout<<'['<<getX()<<","<<getY()<<']';}

class Circle4 : public Point3 {

public:

Circle4 (int = 0, int = 0, double 0.0 );

void setRadius (double);
double getRadius() const;

double getDiamer() const;
double getCircumference() const;
double getArea() const;

private:
double radius;

};

Circle4::Circle4(int xValue, int yValue, double radiusValue):Point3 (xValue,yValue)
{ setRadius (radiusValues); }

void Circle4::setRadius (double radiusValue)
{radius = (radiusValue < 0.0?0.0:radiusValue);}

double Circle4::getRadius () const
{ return radius;}

double Circle4::getDiameter () const
{ return 2*getRadius();}

double Circle4::getCircumference () const
{ return 3.14159*getDiameter();}

double Circle4::getArea () const
{ return 3.14159*getDiameter()*getRadius();}

void Circle4::print() const
{ cout<<"Centre = "; Point::print(); cout<<"; Radius= "<< getRadius();}

void main()
{
Circle4 circle(1,2,3.2);

cout<<"X:"<<circle.getX()<<"Y:"<<circle.getY()<<"Radius:"<<circle.getRadius();

circle.setX(2);
circle.setY(3);
circle.setRadius(4.5);

cout<<"New:"<<circle.print();
cout<<"Diameter:"<<circle.getDiameter();
cout<<"Circumference:"<<circle.getCircumference();
cout<<"Area:"<<circle.getArea();

}
 


Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  __________.JPG 145,20 Kb
PM MAIL   Вверх
rrrFer
Дата 15.5.2008, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 11.5.2008
Где: Красноярск

Репутация: 0
Всего: 1



сразу бросилось в глаза:
Код

class Point3{
public:
    Point3 (int i = 0,int i = 0 );
    void setX(int);
    int getX() const;
    void setY(int);
    int getY() const;
    void ptint() const;
private:
    int x;
    int y;
};
он должен ругаться что переменная i дважды обьявлена
вообще, почему бы так не написать:
Код

class Point3{
public:
    Point3 (int,int);
            //..........
private:
    int x;
    int y;
};
Point3::Point3(int xValue,int yValue){
    x=(xValue); y=(yValue);
}

- зато много проще выглядит

Это сообщение отредактировал(а) rrrFer - 15.5.2008, 19:39
PM MAIL WWW ICQ   Вверх
archimed7592
Дата 15.5.2008, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



Цитата(Atij @  15.5.2008,  19:17 Найти цитируемый пост)
я ведь даже не начианаю компиляцию

Здесь ты не прав... Компиляцию ты начинаешь - этому можно догадаться хотя бы по наличию слова "Compiling" в заголовке диалогового окна.


Цитата(Atij @  15.5.2008,  19:17 Найти цитируемый пост)
почему

Наверное потому что в компиляторе ошибка и ты здесь ничего поделать не сможешь(можешь сменить компилятор, если такое решение устраивает).


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
Atij
Дата 15.5.2008, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 13.4.2008

Репутация: нет
Всего: нет



спс всем, разобрался=)
Просто решил начать изучение наследования =) 
Описался чуток=) Вот такой вопрос: почему эта строчка не хочет проходить компиляцию:
Код

void Circle4::print() const
{ cout<<"Centre = "; Point3::print(); cout<<"; Radius= "<< getRadius();} // пытаюсь активировать ф-ию print класса Point3

PM MAIL   Вверх
bsa
Дата 15.5.2008, 21:56 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Atij, причин может быть миллион. Но если ты процитируешь сообщение об ошибке, то это сильно сократит их количество.
Кстати, очень рекомендую придерживаться правила: одна строчка - одна операция. А у тебя их аж 3, не считая того, что фигурные скобки тоже желательно размещать на отдельных строках - проще разобраться, в каком именно месте ошибка, да и отладку по шагам будет проще делать.

Это сообщение отредактировал(а) bsa - 15.5.2008, 21:58
PM   Вверх
Atij
Дата 15.5.2008, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 13.4.2008

Репутация: нет
Всего: нет



Вопрос решён, не внимательный я просто, не описал print =)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0486 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.