0 / 0 / 1
Регистрация: 17.10.2015
Сообщений: 52
1

Нестандартный синтаксис, используйте "&", чтобы создать указатель на член

17.04.2016, 18:55. Показов 29081. Ответов 3
Метки нет (Все метки)

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

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "RECURSION_ONE.h"
 
 
int main(void)
{
    setlocale(LC_ALL, "rus");
 
    USER_selection user;
 
 
    user.set_menu;
}
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
43
44
45
46
#include "RECURSION_ONE.h"
 
int RECURSION::first_recursion()
{
 
 
}
 
inline void INTERFACE::menu()
{
    cout << "                       Здраствуйте " << endl;
    cout << "               Лабораторная робота №12 " << endl;
    cout << "                       Рекурсия" << endl;
    cout << "Вы можете:" << endl;
    cout << "1.Посмотреть роботу программы" << endl;
    cout << "2.Информация о программе" << endl;
    cout << "Для выхода нажмите 'ESC'" << endl;
} 
inline void INTERFACE::change_recursion()
{
    cout << "Это программа содержит 2 програмы:" << endl;
    cout << "1.Программа №1"<< endl;
    cout << "2.Программа №2" << endl;
}
inline void INTERFACE::vvod()
{
    cout << "Введите n :" << endl;
}
 
 
void USER_selection::set_n(int n)
{
    INTERFACE user;
 
    
    user.vvod;
    cin >> n;
}
void USER_selection::set_menu(int menu)
{
    INTERFACE user;
 
    
    user.menu;
    menu = _getch();
}
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
#pragma once
 
#ifndef MAIN
#define MAIN
#include <iostream>
#include <conio.h>
using namespace std;
//This class  for recursion 
class RECURSION
{
 
public:
    int x;
    int n;
 
    int first_recursion();
    
};
//This class for interface
class INTERFACE
{
public:
    inline void menu();
    inline void change_recursion();
    inline void vvod();
 
};
//This class for user selection
class USER_selection
{
public:
    void set_n(int n);
    void set_menu(int menu);
};
#endif // !MAIN
ошибки
C++
1
2
3
4
Серьезность  Код  Описание    Проект    Файл    Строка    Состояние подавления
Ошибка    C3867   "INTERFACE::menu": нестандартный синтаксис; используйте "&", чтобы создать указатель на член    OP_Recursion    d:\myprograms\op_recursion\op_recursion\recursion_one.cpp   44  
Ошибка    C3867   "INTERFACE::vvod": нестандартный синтаксис; используйте "&", чтобы создать указатель на член    OP_Recursion    d:\myprograms\op_recursion\op_recursion\recursion_one.cpp   36  
Ошибка    C3867   "USER_selection::set_menu": нестандартный синтаксис; используйте "&", чтобы создать указатель на член   OP_Recursion    d:\myprograms\op_recursion\op_recursion\main.cpp    11
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2016, 18:55
Ответы с готовыми решениями:

Не могу создать указатель на функцию. ошибка: нестандартный синтаксис; используйте "&", чтобы создать указатель на член
Выбивает ошибку, когда хочу присвоить переменной адрес какой то функции. Ошибка в строке 28(если...

нестандартный синтаксис используйте "&", чтобы создать указатель на член C3867
Нужно определить принадлежность точки прямой, используя классы. Выходит ошибка C3867 на 56 и 69...

Error C3867: "String::length": нестандартный синтаксис; используйте "&", чтобы создать указатель на член
В классе написал такой метод, чтобы посчитать количество символов в строке: int String::length()...

"Нестандартный синтаксис, используйте "&", чтобы создать указатель на член"
Ошибка в строке 79: Animals::Show нестандартный синтаксис, используйте &quot;&amp;&quot;, чтобы создать...

3
Вездепух
Эксперт CЭксперт С++
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,053
17.04.2016, 19:02 2
Вызов функции в языке С++ делается при помощи оператора ().
4
0 / 0 / 0
Регистрация: 13.07.2019
Сообщений: 22
11.08.2019, 11:56 3
Спасибо, просто сейчас мы говорим про метод. А с обычной функцией без скобок у меня просто не выполнялось тело функции, но компилятор всё нормально собирал
0
зомбяк
1584 / 1218 / 345
Регистрация: 14.05.2017
Сообщений: 3,939
11.08.2019, 12:00 4
AlexeyBelenkov, в C++ (да и вообще) метод класса также называется функцией класса. Так что не
user.vvod;
а
C++
1
user.vvod();
Добавлено через 45 секунд
А то о чём неправильно сказал, называется "поле класса".
0
11.08.2019, 12:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.08.2019, 12:00
Помогаю со студенческими работами здесь

Ошибка C3867 "нестандартный синтаксис; используйте "&", чтобы создать указатель на член"
pictureBox1-&gt;Invalidate; Вызывает ошибку C3867. Что сделать то нужно? И почему тогда vs сама...

Ошибка C3867 "System::Int32::ToString": нестандартный синтаксис; используйте "&", чтобы создать указатель на член
Подскажите пожалуйста что не так с кодом Вот код ошибки ...

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

Не могу создать указатель на перегруженную функцию-член класса
Есть функция монстр из vulkan api. Она является членом класса. Просто написать её название не...

Как создать указатель на функцию-член класса и вызвать его?
Подскажите как правильно сделать, а в дальнейшем вызвать указатель на функцию член класса:...

Как перевести синтаксис Intel в синтаксис AT&T? (ассемблерная вставка в СИ)
Извиняюсь, что, возможно, пишу не в ту тему. Нужен именно AT&amp;T синтаксит. В качестве примера для...


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

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

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