Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
GoodLife
9 / 9 / 3
Регистрация: 23.10.2012
Сообщений: 171
#1

Ошибка при вызове опреатора () в BCpp - C++

26.10.2012, 03:21. Просмотров 239. Ответов 1
Метки нет (Все метки)

В проекте есть класс OSY
листинг класса
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#ifndef OSY_H
#define OSY_H
 
#include <Classes.hpp>
class osy
        {
        public:
        osy();
        AnsiString get();
    void get(AnsiString &x1, int &x2, int &x3);
        void set(AnsiString x1, int x2, int x3);
        void operator()(AnsiString x1, int x2, int x3);
    protected:
    AnsiString name;
    int tobm;
    int pom;
    };
 
#endif   
//------------------------------------------------------------------
#include "osy.h"
 
osy::osy():name("name"),tobm(1),pom(1){}
 
AnsiString osy::get()
        {
        return name;
        }
 
void osy::get(AnsiString &x1, int &x2, int &x3)
    {
    x1=name;
    x2=tobm;
    x3=pom;
    }
 
void osy::set(AnsiString x1, int x2, int x3)
    {
    name=x1;
    tobm=x2;
    pom=x3;
    }
 
void osy::operator()(AnsiString x1, int x2, int x3)
    {
    name=x1;
    tobm=x2;
    pom=x3;
    }

перегрузил operator(), добавил оператор set(AnsiString,int,int,int,int) и get(), вроде нормально все, компиль даже не возмущался, теперь...
при любом изменении в Unit1 вылазит ошибка
Ошибка при вызове опреатора () в BCpp
Причем, если даже выйти из проекта и ничего не сохранить ошибка остается, если изменить на то как было, ошибка все равно остается... До этого все работало (правда криво)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2012, 03:21     Ошибка при вызове опреатора () в BCpp
Посмотрите здесь:

C++ Ошибка при вызове деструктора
Ошибка при вызове метода C++
C++ Ошибка при рекурсивном вызове
C++ Ошибка при вызове функции
C++ Ошибка при вызове деструктора
C++ Ошибка при вызове деструктора
C++ Ошибка при вызове wstring.erase
Ошибка при вызове деструктора C++
C++ Ошибка при вызове деструктора
C++ Ошибка при вызове функции
Ошибка при вызове деструктора C++
Ошибка при вызове WSARecv C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nikeo
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 20
26.10.2012, 03:30     Ошибка при вызове опреатора () в BCpp #2
а зачем перегружать оператор?мне кажется проще сделать конструктор с параметрами.

Добавлено через 2 минуты
попробуй вот так

C++
1
2
3
4
...
osy(AnsiString x1, int x2, int x3): name(x1),tomb(x2),pom(x3)
{}
...
Yandex
Объявления
26.10.2012, 03:30     Ошибка при вызове опреатора () в BCpp
Ответ Создать тему
Опции темы

Текущее время: 22:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru