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

Что означает конструкция int(cls::*), если cls - это класс ? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задача С++ http://www.cyberforum.ru/cpp-beginners/thread435500.html
вводится трех значное число. определить равен ли квадрат этого числа сумме кубов его цифр.
C++ Напечатать последовательно все числа из текста в файле В программе нужно напечатать последовательно все числа из текста в файле http://www.cyberforum.ru/cpp-beginners/thread435492.html
Создать функции для двумерного массива C++
//--------------------------------------------------------------------------- #pragma hdrstop #include <stdio.h> #include <stdlib.h> #define ESC 0x1B //--------------------------------------------------------------------------- #pragma argsused
C++ напечатать последовательно все числа из текста в файле
В программе нужно напечатать последовательно все числа из текста в файле
C++ Два разных operator[] http://www.cyberforum.ru/cpp-beginners/thread435482.html
Зачем нужны в классе два перегруженых оператора operator и почему первый без const? Ето пример из книги Прата class Student { typedef std::valarray<double> ArrayDb; std::string name; ArrayDb scores; public: Student() : name("Null Student"), scores() {} Student(const std::string &s) : name(s), scores() {} explicit Student(int n) : name("Nully"), scores(n) {}
C++ Имена для констант работающих с WebAPI Добрый день. Подскажите пожалуйста, какие имена лучше всего дать для констант хранящих названия REST API веб сервиса. К примеру есть такой апи "http://myhost.com/mobile/doLogin". часть "http://myhost.com/mobile/" постоянна и я ее назвал WebServiceHost. а вот последнее может меняться. doLogin, doMobileKeyCheck, getGallery, getContacts. Мне кажется do и get в имени константы как то не звучит. У... подробнее

Показать сообщение отдельно
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
26.01.2012, 13:23     Что означает конструкция int(cls::*), если cls - это класс ?
Указатель на член класса
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
#include <iostream>
 
class cls
{
    public:
        int i;
        double d;
};
 
//----------
 
int main()
{
    int cls::* p1 = &cls::i;
    double cls::* p2 = &cls::d;
 
    cls obj1 = {1, 1.1};
    std::cout << obj1.*p1 << "\n";
    std::cout << obj1.*p2 << "\n";
 
    cls obj2 = {2, 2.2};
    std::cout << obj2.*p1 << "\n";
    std::cout << obj2.*p2 << "\n";
}
 
Текущее время: 20:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru