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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Leew
1 / 1 / 0
Регистрация: 12.10.2012
Сообщений: 29
#1

Указатель на метод и на поле класса - C++

20.10.2012, 19:16. Просмотров 1884. Ответов 2
Метки нет (Все метки)

Суть такова, нужно создать класс студент, определить метод доступа к скрытым полям уровень знаний и курс. Создать открытое поле стипедия. Создать указатель на метод класса для расчета стипендии и указатель на поле стипендии.

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
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream.h>
 
class Student
{
   int Level;
   int Course;
public:
   int iStipend; 
    
   int mLevel(int aLevel) {Level=aLevel;}
   int mCourse(int aCourse) {Course=aCourse;}
   int Stipend();
};
 
int Student::Stipend()
{
    iStipend=Level/Course*125;
}
 
int main()
{
   int Level;
   int Course;
   Student ob, *pointer;
   cout<<"Введите уровень знаний: "<<endl;
   ob.mLevel(Level);
   cout<<"Введите курс: "<<endl;
   ob.mCourse(Course);
   
   pointer=& ob.Stipend();
   int Student::*dpointer;
   void (Student::*fp)(int Level, int Course)
   Student obj;
   dpointer=& Student::iStipend;
   fp=& Student::Stipend();
   (obj.*fp)(Level, Course);
   cout<<"Стипендия: "<<obj.*dp<<endl;
}
Подскажите в чём ошибки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2012, 19:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатель на метод и на поле класса (C++):

Как передать в метод класса Menu указатель на метод дочернего класса? - C++
Как передать в метод базового класса указатель на метод дочернего: class Menu() { protected: setCallback(*********); //...

Функция, получающая указатель на обычную функцию, получает указатель на метод класса - C++
Здравтсвуйте. Имеется вопрос по указателям на методы класса. Допустим, есть функция( f ), которая принимает указатель на функцию и...

Указатель на поле класса - C++
Доброго дня суток. Есть класс DataOfGroup, список экземпляров этого класса lst, begin() - итератор, установленный на начало списка lst,...

Указатель на класс как поле класса - C++
Как работать с указателем в классе class A {}; class B {private: A * uk}; // как с ним работать?

Указатель на метод класса! - C++
Ответьте пожалуйста на такой вопрос:Возможна ли такая ситуация и как ее реализовать правильно? Мне надо использовать функцию(void...

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

2
alsav22
5429 / 4824 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.10.2012, 20:24 #2
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
using namespace std;
 
class Student
{
   int Level;
   int Course;
public:
   int iStipend; 
    
   void mLevel(int aLevel) {Level = aLevel;}
   void mCourse(int aCourse) {Course = aCourse;}
   void Stipend();
};
 
void Student::Stipend()
{
    iStipend = Level / Course * 125;
}
 
int main()
{
   int Level;
   int Course;
   Student ob;
   cout<<"Введите уровень знаний: "<<endl;
   cin >> Level;
   ob.mLevel(Level);
   cout<<"Введите курс: "<<endl;
   cin >> Course;
   ob.mCourse(Course);
   
   int Student::*pointer;
   pointer = &Student::iStipend;
   
   void (Student::*fp)();
   fp = &Student::Stipend;
   
   (ob.*fp)();
   
   cout << "Стипендия: " << ob.*pointer << endl;
}
1
Leew
1 / 1 / 0
Регистрация: 12.10.2012
Сообщений: 29
20.10.2012, 20:30  [ТС] #3
alsav22, спасибо за ответ, теперь понял.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2012, 20:30
Привет! Вот еще темы с ответами:

Указатель на метод класса - C++
Есть для этого какой-нибудь инструмент? Интересует именно не ссылка, а указатель. Хочется примерно следующего: typedef...

Указатель на метод класса - C++
Собственно, проблема вот в чем. Есть класс и для него определен метод class ABC ....... public: void paint(.....); ...

Указатель на метод класса - C++
Приветствую. Нужна помощь. Не работает указатель в данной программе: #include &lt;iostream&gt; #include &lt;string.h&gt; using namespace std; ...

Указатель на метод класса - C++
Как сделать указатель на метод класса А, который наследует класс В в классе В. class A : B { public: double...


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

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

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