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

Не получается переопределить операторы "+" и "=" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не получается создать свой тип данных http://www.cyberforum.ru/cpp-beginners/thread943571.html
Всем привет! Подскажите почему компилятор ругается на эти три строчки? MyVector2D():x(0),y(0){} MyVector2D(float x, float y):x(x),y(y){} MyVector2D(const MyVector2D &r):x(r.x),y(r.y){} По моей задумке, это конструкоры для моего типа данных. Я вроде все делаю как написано тут:http://www.intuit.ru/studies/courses/1039/231/lecture/3207 А вот какие ошибки выдает: error C2059: синтаксическая...
C++ Работа с CURL Люди, подскажите, как можно прикрутить библиотеку curl к IDЕ Dеv Cплюс плюс . Очень нужно. И желательно все детально расписать :-), и где ее (библиотеку)скачать, нужно именно на Dеv Cплюс плюс , так как скачать другие у меня пока скорость интернета не позволяет Добавлено через 13 минут Что никак нельзя сделать? :-( Добавлено через 19 секунд Что никак нельзя сделать? :-( Добавлено... http://www.cyberforum.ru/cpp-beginners/thread943564.html
std::string::find и кириллица C++
есть простенький код #include <iostream> // std::cout #include <string> // std::string int main () { std::string str = "привет"; std::cout << str.find("ве"); return 0;
C++ Эксперты обобщенного программирования
Прошу подсказать в чем тут ошибка ? Вот часть когда куда указывают ошибки: template < class ArrayList<T>> class Iterator { public: Itrator(ArrayList<T>&); bool hasNext(); T &operator++(); T &operator--(); T &operator()(int);
C++ Неполадки с isalpha http://www.cyberforum.ru/cpp-beginners/thread943514.html
Ниже я привел код самой функции. Суть в том, что я хочу открыть файл и прочитать с него только цифры,английские буквы,разделители и знаки пунктуации.То есть если символ являеться таковым, он заноситься в вектор и будет в дальнейшем использован. Например в файле лежит дальнейшее - rjnjhst jcyjdfkb vtnfk? - все хорошо, но если там лежит строка вида «njkcnjt», то всё,прога вылетает с ошибками,...
C++ знаки после запятой , формат float я вот что делаю: float i = *(float*)0x0000000; приравниваю значение адреса в формате флоат , мне нужно сделать чтобы переменная i равнялась флоату с одним знаком после запятой , не вот так 1.1234567 чтобы равна была, а вот так 1.1 Не хотелось бы услышать ответ - "делением на 10 или на 1000" - уже пробовал , геморно очень , может есть специальные функции или операторы? подробнее

Показать сообщение отдельно
Демик
9 / 9 / 0
Регистрация: 19.04.2012
Сообщений: 114
25.08.2013, 23:39  [ТС]     Не получается переопределить операторы "+" и "="
Вот тут
C++
1
2
3
4
5
6
7
8
//MyVector2D.cpp
...
MyVector2D& MyVector2D::operator /= (const MyVector2D& b)
{
    a.x = b.x;
    a.y = b.y;
    return *this;
}
Может быть нужно так?
C++
1
2
3
4
5
6
7
8
//MyVector2D.cpp
...
MyVector2D& MyVector2D::operator /= (const MyVector2D& b)
{
    x = b.x;
    y = b.y;
    return *this;
}
И ещё вопрос, почему оператор = переопределяется внутри структуры,а оператор "+" вне неё?
Теперь такие ошибки:
error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
error C2371: c: переопределение; различные базовые типы
main.cpp(7): см. объявление "c"
error C2440: инициализация: невозможно преобразовать "MyVector2D" в "int"

Хотя ни на каком этапе преобразование в int не происходит, странно.
1>
 
Текущее время: 14:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru