Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.53/40: Рейтинг темы: голосов - 40, средняя оценка - 4.53
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 661
1

Что такое указатель на член класса?

01.04.2017, 20:07. Показов 7893. Ответов 8
Метки нет (Все метки)

Что такое указатель на член класса?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.04.2017, 20:07
Ответы с готовыми решениями:

Указатель на ф-цию член класса
Чёрная магия или я бот? g++ sub.cpp:21: error: expected unqualified-id before ‘*’ token...

Указатель на функцию-член класса
Нужно передать указатель на функцию класса A изнутри самого класса А в функцию, в качестве...

Указатель на функцию - член класса.
делаю так: class c1 { void foo(); } class c2 { void (*fp)();

Указатель на член структуры/класса
Всем привет! Помогите разобраться. Пусть есть такой код: template <typename Type> class...

8
7159 / 6134 / 2801
Регистрация: 14.04.2014
Сообщений: 26,455
01.04.2017, 20:13 2
На функцию-член может?
0
nd2
3422 / 2802 / 1252
Регистрация: 29.01.2016
Сообщений: 9,426
01.04.2017, 20:19 3
Цитата Сообщение от NewNoob Посмотреть сообщение
Что такое указатель на член класса?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class C 
{
     public:
     //...
         int a_;
};
 
int C::*pimC; // указатель на член C типа int
C aC;
C* pC = &aC;
pimC = &C::a_;
aC.*pimC = 0;
int b = pC –>*pimC;
0
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 661
04.04.2017, 20:33  [ТС] 4
nd2, все равно не понял. pimC - что такое? Откуда мы его взяли? И зачем это может понадобиться?
0
nd2
3422 / 2802 / 1252
Регистрация: 29.01.2016
Сообщений: 9,426
04.04.2017, 20:44 5
Цитата Сообщение от NewNoob Посмотреть сообщение
pimC - что такое? Откуда мы его взяли? И зачем это может понадобиться?
Это пример (синтаксиса), когда используется не объект класса, а указатель на него.
0
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 661
04.04.2017, 21:48  [ТС] 6
nd2,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Test
{
    public:
        int a;
        obj();
        
};
 
Test :: Test()
{
    a = 0;
}
 
Test obj;
 
int *p = &obj.a;
Не то же самое?
0
1506 / 825 / 175
Регистрация: 05.12.2015
Сообщений: 2,457
04.04.2017, 22:25 7
Цитата Сообщение от NewNoob Посмотреть сообщение
Не то же самое?
Нет.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class Foo
{
public:
    int foo;
    int bar;
};
 
 
void set_int(Foo& foo, int Foo::*ptr)
{
    foo.*ptr = 42;
}
 
int main()
{
    Foo foo;
    
    int Foo::* fooptr = &Foo::foo;
 
    set_int(foo, fooptr);
    set_int(foo, &Foo::bar);
}
0
2546 / 1205 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
04.04.2017, 22:28 8
nmcf, есть такое. Указатель на класс-мембера
0
nd2
3422 / 2802 / 1252
Регистрация: 29.01.2016
Сообщений: 9,426
04.04.2017, 22:40 9
Цитата Сообщение от NewNoob Посмотреть сообщение
Не то же самое?
Тут p - указатель на int, содержит адрес поля a, конкретного объекта obj.
Указатель на член класса - это, по сути, не указатель (не содержит адрес поля конкретного объекта), поэтому и применим, к заданному полю, любого объекта класса.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2017, 22:40

Указатель на объект из указателя на член класса
Что как-то сей вопрос ставит меня в тупик. class A { int i; } obj; int main()

Что такое хэндлер файла? Что такое файловый указатель?
Что такое хэндлер файла? Что такое файловый указатель?

Std::thread, создать указатель на член класса
Есть класс #pragma once #include <map> #include <vector> #include <string> #include <thread>...

Указатель на классы, объявленный как член класса
Если у кого-то сохранились какие-либо статьи, заметки в памяти на тему указателей, пожалуйста,...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru