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

Переопределение оператора== - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Алгоритм программы http://www.cyberforum.ru/cpp-beginners/thread45600.html
Доброго времени суток. Есть программа, она выводит время до определенной даты #include <time.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #ifdef WIN32 # define SLEEP(x) Sleep(x) #else /* WIN32 */
C++ функция strcpy и strcat Добрый день!У меня такая проблема...Есть массив строк, где хранятся имена и при выводе имени на экран,если оно длиннее определенного,то я его обрезаю,а в конец добавляю три точки...Но почему-то оно выводит обрезанное имя,а потом разный мусор и только в конце ставит три точки...Вот кусок кода: if(strlen(name) > 27) { str = new char; strncpy(str, name->name, 24); strcat(str,... http://www.cyberforum.ru/cpp-beginners/thread45574.html
C++ Конструктор
Конструктор сбрасывающий экземпляр класса. Что он из себя представляет? Приведите примеры.
Exe файл на другом компе C++
написал прогу на С++ по VS08, exe файл по флешке передал другу, говорит не открывает, в чем проблема?
C++ Статическое поле http://www.cyberforum.ru/cpp-beginners/thread45516.html
Помогите с такой проблемой. Программа нормально компилится, но возвращается, вот такая ошибка при объявлении статического поля, являющегося указателем на массив значений строк символов(char*) типа char. Вот код: Файл "Memory.h" #pragma once #include "combinate.h"
C++ Представление целых чисел массивом байтов у меня вот такая задачка:Написать процедуры сложения и вычитания двух целых чисел, каждое из которых представлено массивом байтов. Первый байт массива содержит код знака числа: 0 - ‘+’, 225 - ‘-‘, а остальные байты- значащие двоичные цифры числа. подскажите пожалуйста как представить число массивом байтов? подробнее

Показать сообщение отдельно
Skirmisher
44 / 44 / 0
Регистрация: 23.05.2009
Сообщений: 92
31.07.2009, 13:59  [ТС]     Переопределение оператора==
Цитата Сообщение от zim22 Посмотреть сообщение
давайте поспорим, что оно не компилируется?
Trigger.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once
#include "combinate.h"
 
class Trigger : public  Combinate
{
public:
    static int *intValues;
public:
    int stateOutF;   //trigger forward
    int stateOutInv; //trigger invert
public:
    Trigger(void);
    Trigger(const Trigger &trig);
    bool SetValue(int number, int value);
    int GetState(size_t number);
    int GetState(size_t variant, size_t value);
    bool operator ==(const Trigger &trig);
    //friend bool operator ==(const Trigger &trig1, const Trigger &trig2);
    ~Trigger(void);
};
Trigger.cpp
C++
1
2
3
4
bool Trigger::operator ==(const Trigger &trig)
{
return (((this->stateOutF)==(trig.stateOutF))&&((this->stateOutInv)==(trig.stateOutInv)));
}
В другом случае( с friend operator)
Trigger.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once
#include "combinate.h"
 
class Trigger : public  Combinate
{
public:
    static int *intValues;
public:
    int stateOutF;   //trigger forward
    int stateOutInv; //trigger invert
public:
    Trigger(void);
    Trigger(const Trigger &trig);
    bool SetValue(int number, int value);
    int GetState(size_t number);
    int GetState(size_t variant, size_t value);
    //bool operator ==(const Trigger &trig);
    friend bool operator ==(const Trigger &trig1, const Trigger &trig2);
    ~Trigger(void);
};
Trigger.cpp
C++
1
2
3
4
bool operator ==(const Trigger &trig1, const Trigger &trig2)
{
return ( ((trig1.stateOutF)==(trig2.stateOutF))&&((trig1.stateOutInv)==(trig2.stateOutInv)) );
}
В том и другом случае компилируется и собирается нормально.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru