|
Ошибка вызова ф-и, компилятор ошибок не выдает! - Вопросы и ответы, обсуждения - Ваши вопросы по C/C++ только в данном разделе |
04.02.2013, 20:32
|
#1
|
|
|
|
Разведчик
|
Регистрация: 03.02.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Ошибка вызова ф-и, компилятор ошибок не выдает!
Последний раз редактировалось Mr.Active; 05.02.2013 в 21:55.
Причина: Добавил код в тему
|
|
|
09.02.2013, 17:45
|
#2
|
|
|
|
Разведчик
|
Регистрация: 17.11.2012
Сообщений: 9
Популярность: 27
Сказал(а) спасибо: 0
Поблагодарили 3 раз(а) в 3 сообщениях
|
Re: Ошибка вызова ф-и, компилятор ошибок не выдает!
Что за бред я сейчас увидел ?
Код:
#include <iostream>
using namespace std;
void Area ( );
void Perimetr ( );
void ChooseMenu ( );
int main ( )
{
cout << "ENTER PASSWORD" << endl;
int A = 555, P = 0;
cin >> P;
if ( P == A )
{
cout << " ACESS DENIED !!! " << endl;
void ChooseMenu ( ); // Ошибка не нужно указывать void
}
else
{
cout << " ACESS NOT DENIED " << endl;
}
cin.get ();
cin.get ();
//Ошибка нет return
Теперь дальше. .cpp это другой модуль программы и обращаются к нему через .h
Создайте хедер с прототипами функций ну или сделайте их членами n-го класса, дальше определяйте класса в .cpp. А уже в main подключайте хедер объявляйте объект класса, и вызывайте функцию
Добавлено через 16 минут
Код:
/* sampleClass.h */
#ifndef SAMPLECLASS_H
#define SAMPLECLASS_H
class SampleClass {
public:
void ChooseMenu(void);
double Perimetr(double, double);
double Area(double,double);
};
#endif
Код:
/* sampleClass.cpp */
#include "sampleClass.h"
#include <iostream>
using namespace std;
void SampleClass::ChooiseMenu() {
double x, y;
cout << " Enter number : One for find perimetr & Two for find Area" << endl;
int choose = 0;
cin >> choose;
if (choose == 1)
{
cout << "Please enter numbers: ";
cin >> x >> y;
cout << Perimetr(x,y);
}
if (choose == 2)
{
cout << "Please enter numbers: ";
cin >> x >> y;
cout << Area(x,y);
}
}
double SampleClass::Perimetr(double a, double b) {
return (a + b) * 2;
}
double SampleClass::Area(double a, double b) {
return a * b;
}
Код:
/* main.cpp */
#include "sampleClass.h"
#include <iostream>
int main() {
SampleClass *sampleC = new SampleClass();
cout << "ENTER PASSWORD" << endl;
int A = 555, P = 0;
cin >> P;
if ( P == A )
{
cout << " ACESS DENIED !!! " << endl;
sampleC->ChooseMenu ( );
}
else
{
cout << " ACESS NOT DENIED " << endl;
}
delete sampleC;
return 0;
}
Как-то так, не проверял
Последний раз редактировалось pqsl; 09.02.2013 в 18:05.
Причина: Добавлено сообщение
|
|
|
09.02.2013, 20:40
|
#3
|
|
|
|
Разведчик
|
Регистрация: 03.02.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Ошибка вызова ф-и, компилятор ошибок не выдает!
Спасибо товарищ , я только учусь . Когда я писал этот код я не знал о том, как работает : препроцессор , компилятор и линкер. Щас установил на VM ubuntu и gcc, а вчера только только разобрал подключение файлов в файл. я так понял мне надо прописывать " #include < header.h > ", чтобы препроцессор подключил эти файлы и компилятор сделал адекватный код для последующего вызова функий из этих файлов! Вы используете классы, а я до них еще не дочитал
Последний раз редактировалось Mr.Active; 09.02.2013 в 20:43.
|
|
|
09.02.2013, 21:34
|
#4
|
|
|
|
Разведчик
|
Регистрация: 17.11.2012
Сообщений: 9
Популярность: 27
Сказал(а) спасибо: 0
Поблагодарили 3 раз(а) в 3 сообщениях
|
Re: Ошибка вызова ф-и, компилятор ошибок не выдает!
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 05:25.
|
|