Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Kgfq
74 / 37 / 2
Регистрация: 23.09.2012
Сообщений: 408
#1

Перегрузка операторов - C++

28.10.2012, 16:33. Просмотров 561. Ответов 12
Метки нет (Все метки)

C++
1
2
3
4
5
ifstream ifile("open.txt");
if(! ifile)
{
 
}

Как реализовать класс, что бы можно было писать:

C++
1
2
3
4
5
A a;
if(a)
{
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2012, 16:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перегрузка операторов (C++):

Что такое "перегрузка операторов"? Каковы принципы работы перегруженных операторов и назначение указателя this - C++
Добрый день . Помогите понять принцип работы перегрузки операторов. объясните пожалуйста в зависимости от чего зависит агрумент при...

Перегрузка операторов - C++
Доброго всем времени суток!Пожалуйста помогите мне неучу разобраться.Пытаюсь разобраться с классами,но пока безуспешно без посторонней...

Перегрузка операторов - C++
Доброго времени суток. на завтра надо сделать работу, а я не могу понять как использовать перегрузку операторов. помогите пожалуйста...

Перегрузка операторов - C++
Всем Hello world! Изучаю C++, сейчас дошёл до классов, а точнее до перегрузки операторов. Решил в учебных целях написать класс, который...

Перегрузка операторов - C++
написал программу. проверил. вроде все правильно. но не работает. программа долjна посредством перегрузки знака = скопировать из строки S1...

[c++] Перегрузка операторов - C++
Для заданных A = (A – a1, A, A + a2) и B = (B – b1, B, B + b2) Найти сумму A + B = (A + B – a1 – b1, A + B, A + B + a2 + b2); ...

12
Jupiter
Каратель
Эксперт С++
6561 / 3982 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
28.10.2012, 16:42 #2
написать оператор приведения к одному из скалярных типов или к указателю на любой тип
1
Kgfq
74 / 37 / 2
Регистрация: 23.09.2012
Сообщений: 408
28.10.2012, 16:43  [ТС] #3
Jupiter, то есть:

C++
1
2
3
4
5
6
7
8
9
class A
{
public:
 
bool operator int()
{
 
}
};
0
I.M.
566 / 549 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
28.10.2012, 16:46 #4
C++
1
2
3
4
operator bool() const 
{
    return true;
}
1
soon
2542 / 1307 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
28.10.2012, 16:46 #5
Kgfq, а что это вдруг оператор int стал bool возвращать?
0
Kgfq
74 / 37 / 2
Регистрация: 23.09.2012
Сообщений: 408
28.10.2012, 16:49  [ТС] #6
soon, таки нам же нужно проверить if(true) или if(false). Неужели нельзя при приведении к одному типу вернуть другой?
0
Jupiter
28.10.2012, 16:55
  #7

Не по теме:

Цитата Сообщение от Kgfq Посмотреть сообщение
Неужели нельзя при приведении к одному типу вернуть другой?
вам не надоело задавать бредовые вопросы?

0
Kgfq
74 / 37 / 2
Регистрация: 23.09.2012
Сообщений: 408
28.10.2012, 17:13  [ТС] #8
Цитата Сообщение от Jupiter Посмотреть сообщение

Не по теме:


вам не надоело задавать бредовые вопросы?

С++, между прочим, весьма опасный язык. Если мы можем указать на то, чего не существует, то почему не можем перегрузить так, как нам того хочется?
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
28.10.2012, 17:16 #9
Цитата Сообщение от Kgfq Посмотреть сообщение
С++, между прочим, весьма опасный язык. Если мы можем указать на то, чего не существует, то почему не можем перегрузить так, как нам того хочется?
Потому что есть границы допустимого. А есть границы статического знания и динамического. Перегрузка выполняется статически, так что тут вы подчиняетесь компилятору. В динамике можете творить, что хотите.
0
Kgfq
74 / 37 / 2
Регистрация: 23.09.2012
Сообщений: 408
28.10.2012, 17:19  [ТС] #10
Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
А есть границы статического знания и динамического.
Можно об этом поподробней?
Или ссылку на информацию
0
Jupiter
28.10.2012, 17:20
  #11

Не по теме:

Цитата Сообщение от Kgfq Посмотреть сообщение
С++, между прочим, весьма опасный язык. Если мы можем указать на то, чего не существует, то почему не можем перегрузить так, как нам того хочется?
да есть очень много нелогичных выносящих мозг вещей, ваши же вопросы на уровне элементарного синтаксиса подробности которого можно нагуглить если так уж влом читать литературу

0
Kgfq
28.10.2012, 17:22  [ТС]
  #12

Не по теме:

Jupiter, мелочи узнавать лучше от людей. Книги, в основе своей, объясняют чуть более глобальные вещи. Или вовсе не те.

0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
28.10.2012, 17:24 #13
Цитата Сообщение от Kgfq Посмотреть сообщение
Можно об этом поподробней?
Или ссылку на информацию
Есть вещи, которые известны уже при компиляции. Например, это тип возвращаемого функцией значения. И тип выражения — операнда return. Если они не совпадают и не приводимы, компилятор ругнётся.

А есть вещи, которые известны только динамически, только при выполнении программы. Например, это настоящий тип объекта, на который указывает указатель, и то значение, на которое он указывает. Тут компилятор может проверить только ограниченное число случаев. Те случаи, которые он проверить не может, и позволяют тот самый произвол указывания на то, что не существует, или на то, что совсем другое.
1
28.10.2012, 17:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2012, 17:24
Привет! Вот еще темы с ответами:

Перегрузка операторов - C++
Добрый вечер, вопрос в том, что я пытаюсь перегрузить оператор ++ постфиксно, но на нем падает программа, а перегруженный префиксно...

[C++] Перегрузка операторов - C++
Помогите пожалуйста перегрузить операторы в матрице: +=, i++, != и Перегрузил *= но не уверен, что так надо =\ Буду очень...

Перегрузка операторов - C++
Столкнулся с проблемой при написании лабораторной по перегрузке операторов. Задание таково: описать класс, содержащий координаты отрезка,...

перегрузка операторов - C++
Встала проблема с перегрузкой операторов. Обычные типа --, или += я вроде как написать смог, но встали ошибки с перегрузкой операторов << и...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.