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

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

Войти
Регистрация
Восстановить пароль
 
Керра
1276 / 444 / 45
Регистрация: 24.08.2011
Сообщений: 2,133
#1

Не получается присвоить значение указателю на функцию - C++

16.08.2013, 13:18. Просмотров 321. Ответов 4
Метки нет (Все метки)

В строке 26 говорит, что не может конвертировать тип. Что неправильно?
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
 
class MyClass
{
private:
    int itsVal;
    static int numberOfObj;
public:
    MyClass(): itsVal(2*numberOfObj + 1) { numberOfObj++; }
    ~MyClass() { numberOfObj--; }
    static int GetNumber() { return numberOfObj; }
    int GetVal() const { return itsVal; }
};
 
int MyClass::numberOfObj = 0;
 
int main()
{
    MyClass *objOne = new MyClass, 
        *objTwo = new MyClass, 
        *objThree = new MyClass;
    int (MyClass::*pGet) () const = 0;
    pGet = MyClass::GetVal;
 
    cout << "At the beginning: " << MyClass::GetNumber() << endl;
 
    delete objOne;
    delete objTwo;
    delete objThree;
    cout << "At the end: " << MyClass::GetNumber() << endl;
    _getch();
    return 0;
}
Добавлено через 2 минуты
А, уже все, поняла что там я совсем не то написала...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2013, 13:18     Не получается присвоить значение указателю на функцию
Посмотрите здесь:

Присвоить указателю значение, пример из интернета - C++
Добрый вечер. В интернете находил парочку таких примеров: 1.) int *x; cout&lt;&lt;*x; *x=100; 2.)

Как присвоить указателю значение другого указателя внутри процедуры? - C++
Подскажите пожалуйста. Вот я хочу одному указателю присвоить значение другого указателя внутри процедуры. Как это сделать ? Вот мой код. ...

ПРисвоить указателю нулевое значение- кк? с поммощщю каких знаков и действий? - C++
Пожалуста, обьясните принцип. Такого присвоения.

Не получается присвоить значение указателя в функции - C++
void Gauss(double *x,double b) { for (int i = n-1; i &gt;0 ; i--) { *x=0; for (int j = n; j &lt; i; j--) { *x+=-*x*A; } ...

Присвоить указателю конкретный адрес - C++
Есть переменная типа str.Допустим там хранится строка &quot;5a32d8&quot;.Как это значение присвоить указателю. Т.е. чтобы указатель указывал на...

Присвоить Указателю адрес из массива Char - C++
Например есть такой код: #include &lt;iostream&gt; using namespace std; int main() { int a = 123456789; int *sa =...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Hugra
47 / 47 / 1
Регистрация: 18.07.2013
Сообщений: 138
Записей в блоге: 1
16.08.2013, 13:25     Не получается присвоить значение указателю на функцию #2
Объясните пожалуйста , что не правильно и где исправить что бы работало.
Я так понимаю, что нельзя указывать на функцию, которая возвращает не статическую переменную.
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6444 / 3083 / 306
Регистрация: 04.12.2011
Сообщений: 8,495
Записей в блоге: 4
16.08.2013, 13:32     Не получается присвоить значение указателю на функцию #3
Керра, попробуйте это прочесть. Озаглавлено как указатель на виртуальную, но речь идёт о любых:
Указатель на виртуальную функцию
Способ предложенный [ТC] - экзотика из числа "надо же", поэтому обратите внимание на ответы по теме.
Вкратце: не статический метод класса можно вызвать по указателю, но при этом используется указатель, через конкретный экземпляр. Синтаксис там есть.
Если метод статический, то доступ возможен через указатель использующий имя класса. Синтаксис тоже приведен
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
16.08.2013, 13:33     Не получается присвоить значение указателю на функцию #4
Цитата Сообщение от Hugra Посмотреть сообщение
Объясните пожалуйста , что не правильно и где исправить что бы работало.
Я так понимаю, что нельзя указывать на функцию, которая возвращает не статическую переменную.
Можно. Только раз нам нужен указатель на функцию, то и присваивать ему надо адрес функции:
C++
1
2
//pGet = MyClass::GetVal;
pGet = &MyClass::GetVal;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.08.2013, 13:33     Не получается присвоить значение указателю на функцию
Еще ссылки по теме:

Двумерный массив указателей присвоить другому указателю - C++
char *tp = { &quot;bb&quot;, &quot;vv&quot;, &quot;zz&quot;, &quot;kk&quot;, &quot;&quot; }; char ***mp = tp; // вот здесь ошибка что нужно прописать чтоб...

не получается написать перегруженную функцию, которая возвращает значение в зависимости от набора формальных - C++
Которая возвращает значение в зависимости от набора формальных параметров:z=min(x,y)для 3 типов параметра x:int, float; double Я начал...

Есть ли альтернатива указателю на функцию - C++
Добрый день! Я решаю упражнение из книжки Страуструпа, в котором необходимо создать класс, который хранит параметры конcтруктора в своих...

Передача массива в функцию по указателю - C++
Помогите с заданием нужно передать массив в функцию по указателю


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

Или воспользуйтесь поиском по форуму:
Керра
1276 / 444 / 45
Регистрация: 24.08.2011
Сообщений: 2,133
16.08.2013, 13:33  [ТС]     Не получается присвоить значение указателю на функцию #5
Уже все поняла сама)) Всегда так - спрошу, и тут же сама нахожу ответ))
Yandex
Объявления
16.08.2013, 13:33     Не получается присвоить значение указателю на функцию
Ответ Создать тему
Опции темы

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