Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2016, 23:51   #21
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Потому что у бинарных операторов два параметра, а у вас три. Две даты и число.
p51x вне форума Ответить с цитированием
Старый 24.05.2016, 00:35   #22
Вероника99
Форумчанин
 
Регистрация: 15.12.2013
Сообщений: 414
По умолчанию

Cделала так
.h
Код:

 void operator +(int);
cpp:
Код:
 void operator +( int k)
{
...
}
Теперь
cpp(36): error C2803: "operator +" должен иметь по крайней мере один формальный параметр типа класс
Как же я не люблю комбинацию с++ и cli!
Вероника99 вне форума Ответить с цитированием
Старый 24.05.2016, 00:44   #23
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

тип возвращаемого значения куда дели?
говорилось про аргументы же.

и это есть в документации.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 24.05.2016, 01:07   #24
Вероника99
Форумчанин
 
Регистрация: 15.12.2013
Сообщений: 414
По умолчанию

Пробовала и так,и так
Код:
Date A = gcnew Date(day1, month1, year1);
               A+3;
.h
Код:
  Date operator +(int);
.cpp
Код:
Date operator +( int k)
        {
           Date A;
   
            return A;
        }
cpp(36): error C2803: "operator +" должен иметь по крайней мере один формальный параметр типа класс
Вероника99 вне форума Ответить с цитированием
Старый 24.05.2016, 05:43   #25
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

1. Оператору лучше возвращать ссылку
2. Где в срр у оператора вы потеряли квалификатор класса Date:: ?
p51x вне форума Ответить с цитированием
Старый 24.05.2016, 16:22   #26
Вероника99
Форумчанин
 
Регистрация: 15.12.2013
Сообщений: 414
По умолчанию

Помогло следующее:

Код:
   Date^ Date::operator +( int k)
{
return this;
}
Возникла новая проблема,при наследовании классов.
Пытаюсь объявить член класса:
Код:
#include "Date.h"
 //#include <string>
ref class Person:Date
{
	
public:
	Person(void);

	  String ^name;

};
Ошибки
Person.h(10): error C2143: синтаксическая ошибка: отсутствие ";" перед "^"
Person.h(10): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
Person.h(10): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
Вероника99 вне форума Ответить с цитированием
Старый 24.05.2016, 16:46   #27
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

System::String или using
p51x вне форума Ответить с цитированием
Старый 24.05.2016, 22:08   #28
Вероника99
Форумчанин
 
Регистрация: 15.12.2013
Сообщений: 414
По умолчанию

Те же самые ошибки выдает((
Код:
#pragma once
#include "Date.h"
System::String;
//#include <string>
ref class Person:Date
{
	 
public:
	Person(void);

	  String ^name;
      


	
};
Вероника99 вне форума Ответить с цитированием
Старый 24.05.2016, 22:18   #29
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну так фигня написано вот и выдает. Смотрите основы .NET и C++/CLI, про namespace.

И #include <string> это std::string, а не System::String.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 24.05.2016, 23:31   #30
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Опа-на! А я думал, что с++ знаю на пятёрку.
поржал
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ребят, уже запарился, гляньте, что не так!? конструктор копирования и оператор присваивания bayanist17 Помощь студентам 0 29.09.2013 12:00
Ошибка с конструктором копирования Qwoort Общие вопросы C/C++ 11 13.06.2012 21:53
Как узнать, что производится копирования файла? pavellyba Общие вопросы Delphi 5 11.08.2011 17:37
Макрос для копирования значений из нескольких файлов в один общий с определенным условием копирования zenner Microsoft Office Excel 0 21.03.2011 14:48
Что-то не так с конструктором Дырдин Общие вопросы C/C++ 7 26.03.2010 18:33