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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> работает в visual studio..... не компилится в unix... 
:(
    Опции темы
Zakary
Дата 1.5.2009, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



почему не покпилится в unix данный код?

Цитата


integerset.h:13: error: ISO C++ forbids declaration of âostreamâ with no type
integerset.h:13: error: âostreamâ is neither function nor member function; cannot be declared friend
integerset.h:13: error: expected â;â before â&â token



Код


.h
class integerset
{
public:
    integerset();
    integerset *unionOfSets(const integerset& ) const;
    integerset *intersectionOfSets(const integerset&) const;
    void insertElement();
    void deleteElement();
    void setArray(int, int);
    void deleteElement(int);
    void printSet() const;
    bool isEqualTo(const integerset& ) const;
private:
        int integerSet[101];
    };

integerset.cpp
#include <iostream>
using namespace std;
#include "integerset.h"

integerset::integerset()
{
for(int i=0;i<101;i++)
    integerSet[i]=0;
}

void integerset::insertElement()
{
    int arrayFig;
    int i;
    cout<<"Enter numbers to insert in array(999 to stop): "<<endl;
    for(int p=0;p<101||i!=999;p++)
    {
    cin>>i;
    if (i==999)
        break;
    if(i<0||i>100)
    {
        cout<<"wrong number! Please Enter numbers from 0 to 100"<<endl;
    }
    else
    {
    arrayFig=1;
    setArray(arrayFig, i);
    }
    }
}
void integerset::deleteElement()
{
    int arrayFig;
    int i;
    cout<<"Enter numbers to delete from array(999 to stop): "<<endl;
    for(int p=0;p<101||i!=999;p++)
    {
    cin>>i;
    if (i==999)
        break;
    if(i<0||i>100)
    {
        cout<<"wrong number! Please Enter numbers from 0 to 100"<<endl;
    }
    else
    {
    arrayFig=0;
    setArray(arrayFig, i);
    }
    }
}
void integerset::setArray(int a, int b)
{
    integerSet[b]=a;
}
integerset *integerset::unionOfSets(const integerset& integer) const
{
    integerset *p=new integerset();
    for (int i=0;i<101;i++)
    {
        if (integer.integerSet[i]==1||integerSet[i]==1)
            p->integerSet[i]=1;
        else 
            p->integerSet[i]=0;
    }
    return p;
}
integerset *integerset::intersectionOfSets(const integerset& integer) const
{
    integerset *p=new integerset();
    for (int i=0;i<101;i++)
    {
        if (integer.integerSet[i]==0||integerSet[i]==0)
            p->integerSet[i]=0;
        else 
            p->integerSet[i]=1;
    }
    return p;
}
 void integerset::printSet()const
{
    int count=0;
    for (int i=0;i<101;i++)
    {
        if (integerSet[i]==1)
            cout<<i<<" ";
        else
            count++;
        if (count==100)
            cout<<"---"<<endl;
    }
    cout<<endl;
}

bool integerset::isEqualTo(const integerset& integer) const
{
    int count=0;
    for(int i=0;i<101;i++)
    {
        if (integer.integerSet[i]!=integerSet[i])
        {
            cout<<"sets are not equal!";
            return 1;
        }
    }
    cout<<"sets are equal!";
            return 0;
}

test.cpp
#include <iostream>
using namespace std;
#include "integerset.h"
int main()
{
    integerset a, b;
    a.insertElement();
    cout<<"Elements is object a after insertElement(): "<<endl;
    a.printSet();
    a.deleteElement();
    cout<<"Elements is object a after deleteElement(): "<<endl;
    a.printSet();
    b.insertElement();
    b.printSet();
    integerset *setunion = a.unionOfSets(b);
    integerset *setinersection=a.intersectionOfSets(b);

    a.isEqualTo(b);
return 0;

 


PM MAIL   Вверх
bsa
Дата 1.5.2009, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Zakary, перепиши строки: 
#include <iostream> - похоже, там символы <> имеют кривую кодировку
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

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

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


 




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


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

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