С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
81 / 25 / 19
Регистрация: 27.10.2014
Сообщений: 420
1

Оператор взятия адреса

15.02.2016, 22:55. Показов 1439. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
1
struct A{};
в таком классе неявно объявлен 1 или 2 оператора взятия адреса(для константного и не константного объекта)?
C++
1
2
3
4
5
6
7
8
9
10
struct A{
    A *operator&(){
        std::cout << "operator &" << std::endl;
        return this;
    }    
    const A *operator&() const{
        std::cout << "const" << std::endl;
        return this;
    }
};
так или не так?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2016, 22:55
Ответы с готовыми решениями:

Оператор взятия адреса
Доброй ночи, оператор взятия адресса не перечислен среди Special member functions, но он...

Указатели, Оператор взятия адреса
Вообщем, ребят, недавно разбирался с указателями в С++ и столкнулся с проблемой понимания следующих...

Оператор взятия адреса (&)
while (true) { int *temp = new int(13); std::cout &lt;&lt; temp &lt;&lt; &quot; &quot;; std::cout &lt;&lt; &amp;temp...

Как мне избежать взятия адреса у аргумента функции?
Здравствуйте, написал код, который на одном компиляторе работает как надо, а на другом выдает...

9
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
15.02.2016, 23:05 2
Цитата Сообщение от valeriy007 Посмотреть сообщение
так или не так?
Можно считать, что так.
0
81 / 25 / 19
Регистрация: 27.10.2014
Сообщений: 420
15.02.2016, 23:09  [ТС] 3
Цитата Сообщение от Tulosba Посмотреть сообщение
Можно считать, что так.
"можно"?)
А если точно это так?

Добавлено через 3 минуты
все разобрался
0
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
16.02.2016, 00:53 4
это мои 7-ой и 8-ой методы в пустом классе. Но меня все носом тычат, что раз их нету в разделе Special Class Function, то нет. И вот как с ними мне теперь?(
0
81 / 25 / 19
Регистрация: 27.10.2014
Сообщений: 420
16.02.2016, 14:50  [ТС] 5
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
это мои 7-ой и 8-ой методы в пустом классе. Но меня все носом тычат, что раз их нету в разделе Special Class Function, то нет. И вот как с ними мне теперь?(
А можно услышать весь список методов в пустом классе?
я насчитал 6
0
Модератор
Эксперт CЭксперт С++
5286 / 2373 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
16.02.2016, 17:09 6
valeriy007, как-то так, наверное:
  1. конструктор
  2. деструктор
  3. конструктор копирования
  4. оператор копирующего присваивания
  5. конструктор перемещения
  6. оператор перемещающего присваивания
  7. перегруженный оператор вывода
  8. перегруженный оператор ввода

Добавлено через 41 секунду
Ещё можно геттер и сеттер добавить. Тогда будет 10.
0
81 / 25 / 19
Регистрация: 27.10.2014
Сообщений: 420
16.02.2016, 19:23  [ТС] 7
Ну мой список выглядит вот так:
1. Конструктор
2. Конструктор копирования
3. Деструктор
4. Оператор присваивания, я так понимаю копирующий
5. Оператор взятия адреса
6. Оператор взятия адреса для константного объекта
Поправьте если не прав...

Цитата Сообщение от gru74ik Посмотреть сообщение
как-то так, наверное
конструктор перемещения
оператор перемещающего присваивания
Можно пример кода?
Цитата Сообщение от gru74ik Посмотреть сообщение
перегруженный оператор вывода
перегруженный оператор ввода
Их же нет в пустом классе...
Цитата Сообщение от gru74ik Посмотреть сообщение
Ещё можно геттер и сеттер добавить. Тогда будет 10.
а это точно с++?
0
Модератор
Эксперт CЭксперт С++
5286 / 2373 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
16.02.2016, 19:58 8
Цитата Сообщение от valeriy007 Посмотреть сообщение
а это точно с++?
Конечно. IDE предлагают геттеры и сеттеры создавать, при создании нового класса. В частности, QtCreator и Code::Blocks.

Добавлено через 8 минут
Цитата Сообщение от valeriy007 Посмотреть сообщение
Можно пример кода?
C++
1
2
3
4
5
6
class X
{
public:
    X (X&& rvalue); // перемещающий конструктор
    X& operator=(X&& rvalue); // оператор перемещающего присваивания
}
0
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
17.02.2016, 01:29 9
Цитата Сообщение от gru74ik Посмотреть сообщение
перегруженный оператор вывода
перегруженный оператор ввода
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
17.02.2016, 01:48 10
Цитата Сообщение от valeriy007 Посмотреть сообщение
5. Оператор взятия адреса
http://rextester.com/WVWO70569

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
#include <iostream>
 
struct sample
{
    const sample& operator~()const
    {
        std::cout <<"прикинулось деструктором\n";
        
        return *this;
    }
    
    template<class T>
    const sample& operator,(T&& v)const
    {
        std::cout <<"принимаю новое значение: '" << v<< "'\n";
        return *this;
    }
};
 
int main()
{
    std::cout << "Hello, world!\n";
    
    ~sample(),10,30.5f, "trololo", "здесь был Вася";
}
Кликните здесь для просмотра всего текста
Код
+       -       *       /       %       ^       &       |
~       !       ,       >=      <=      >       <       =
++      --      <<      >>      ==      !=      &&      ||
+=      -=      /=      %=      ^=      &=      |=      *=
<<=     >>=     [ ]     ( )     ->      ->*     new     delete
0
17.02.2016, 01:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.02.2016, 01:48
Помогаю со студенческими работами здесь

Как работает операция взятия адреса "&"?
В каждой переменной есть адрес,так вот,когда операция взятия адреса берёт адрес,она его копирует?И...

Синонимы операций взятия адреса массива (arr и &arr)
возможно коряво написал заголовок, да и сам вопрос банальный. после создании лок. массива его адрес...

взятия интеграла
Пожалуйста, подтолкните идею решения!!! dx/((x^2+1)^2)

Как достать из телефонной книги адреса чатов, адреса проживания и сайты
Здравствуйте, как достать из телефонной книги адреса чатов, адреса проживания и сайты. телефоны и...

Даны части IPv4 адреса и нужно собрать из них все возможные адреса
Здравствуйте, мне нужно написать такой алгоритм. Даны часты IPv4 адреса и нужно собрать из них все...

Почему при присваивании адреса массива не ставится знак '&' получения адреса
int main() { int a = { 2, 3 }; int* b; b = a; //Почему при присваивании адреса массива не...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru