Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/75: Рейтинг темы: голосов - 75, средняя оценка - 4.56
2 / 2 / 0
Регистрация: 13.03.2016
Сообщений: 54

Выражение перед скобками вероятного вызова должно иметь тип функции (pointer-to-)

23.05.2018, 09:13. Показов 15866. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Постоянно возникает ошибка "Выражение перед скобками вероятного вызова должно иметь тип функции (pointer-to-)" у функции CreasteWindow
Уже не знаю что делать!
Подскажите, в чём ошибка?
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#include "windows.h"
 
LRESULT CALLBACK WndProc(HWND hwnd,
                         UINT msg,
                         WPARAM wp,
                         LPARAM lp);
 
int WINAPI WinMain(HINSTANCE hInstance, 
    HINSTANCE hPrevInstance, 
    LPSTR lpCmdLine,
    int nCmdShow) 
{ 
    HWND  hwnd;
    MSG msg;
 
    WNDCLASSEX wndcl;
    wndcl.cbSize = sizeof(wndcl);
    wndcl.style = CS_VREDRAW | CS_HREDRAW;
    wndcl.lpfnWndProc = WndProc;
    wndcl.lpszMenuName = NULL;
    wndcl.cbWndExtra = NULL; // число освобождаемых байтов в конце структуры
    wndcl.cbClsExtra = NULL;
    wndcl.hIcon = LoadIcon(NULL, IDI_INFORMATION);
    wndcl.hIconSm = LoadIcon(NULL, IDI_WINLOGO);
    wndcl.hCursor = LoadCursor(NULL, IDC_CROSS);
    wndcl.hbrBackground = (HBRUSH)GetStockObject(GRAY_BRUSH);
    wndcl.lpszClassName = L"MyClass";
    wndcl.lpszMenuName = L"MyMenu";
    wndcl.hInstance = hInstance;
 
    if (!RegisterClassEx(&wndcl))
    {
        MessageBox(NULL, L"Класс не зарегистрирован", L"Ошибка", MB_OK | MB_ICONERROR);
        return NULL;
    }
 
    hwnd = CreateWindow(L"MyClass", 
                        L"Полноценная оконная процедура"
                        WS_OVERLAPPEDWINDOW | WS_VSCROLL, 
                        CW_USEDEFAULT, // положение окна по оси х (по умолчанию)
                        NULL, // позиция окна по оси у (раз дефолт в х, то писать не нужно)
                        CW_USEDEFAULT, // ширина окошка (по умолчанию)
                        NULL, // высота окна (раз дефолт в ширине, то писать не нужно)
                        HWND(NULL), // дескриптор родительского окошка (у нас нет род. окон)
                        NULL, // дескриптор меню (у нас его нет)
                        HINSTANCE(hInstance), // .... экземпляра приложения
                        NULL); // ничего не передаём из WndProc
 
    if (!hwnd)
    {
        MessageBox(NULL, L"Не удалось создать окно", L"Ошибка", MB_OK | MB_ICONERROR);
        return NULL;
    }
 
    ShowWindow(hwnd, nCmdShow);
    UpdateWindow(hwnd);
 
    while (GetMessage(&msg, NULL, NULL, NULL)) { // извлекаем сообщения из очереди, посылаемые фу-циями, ОС
        TranslateMessage(&msg); // интерпретируем сообщения
        DispatchMessage(&msg); // передаём сообщения обратно ОС
    }
    return msg.wParam; // возвращаем код выхода из приложения
 
}
 
LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
    HDC hDC; // создаём дескриптор ориентации текста на экране
    PAINTSTRUCT ps; // структура, сод-щая информацию о клиентской области (размеры, цвет и тп)
    RECT rect; // стр-ра, определяющая размер клиентской области
    COLORREF colorText = RGB(255, 0, 0); // задаём цвет текста
    switch (uMsg) {
    case WM_PAINT: // если нужно нарисовать, то:
        hDC = BeginPaint(hWnd, &ps); // инициализируем контекст устройства
        GetClientRect(hWnd, &rect); // получаем ширину и высоту области для рисования
        SetTextColor(hDC, colorText); // устанавливаем цвет контекстного устройства
        DrawText(hDC, L"It's my first programm", -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); // рисуем текст
        EndPaint(hWnd, &ps); // заканчиваем рисовать
        break;
    case WM_DESTROY: // если окошко закрылось, то:
        PostQuitMessage(NULL); // отправляем WinMain() сообщение WM_QUIT
        break;
    default:
        return DefWindowProc(hWnd, uMsg, wParam, lParam); // если закрыли окошко
    }
    return NULL; // возвращаем значение
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.05.2018, 09:13
Ответы с готовыми решениями:

Выражение перед скобками вероятного вызова должно иметь тип функции (pointer-to-)
void paint(HDC hdc, HWND hwnd, int m1, int n1, int k1) { HBRUSH hBrush = CreateSolidBrush(RGB(m1, n1, k1)); HBRUSH hOldBRUSH =...

Ошибка: Выражение перед скобками вероятного вызова должно иметь тип функции (pointer-to-)
Выдаёт ошибку Выражение перед скобками вероятного вызова должно иметь тип функции (pointer-to-) при попытке нахождения определённого...

Выражение должно иметь тип класса. Да ну?
перекопал весь форум, ни где не нашел решение моей проблемы. #include <GL/glut.h> #include <Windows.h> #include...

2
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,243
23.05.2018, 09:40
Цитата Сообщение от anastaska97 Посмотреть сообщение
L"Полноценная оконная процедура"
Нет запятой в конце этой строки
1
2 / 2 / 0
Регистрация: 13.03.2016
Сообщений: 54
23.05.2018, 10:25  [ТС]
Вот блин
Час потратил, пока лазил по сайтам и пытался найти ошибку
А тут в запятой дело
Спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.05.2018, 10:25
Помогаю со студенческими работами здесь

Выражение должно иметь тип класса
Вот код мне нужно проверить пустое поле textBox1. if (textBox1->Text.Empty) { Form2 ^ F2; F2 = gcnew Form2(); ...

Выражение должно иметь тип класса
Есть класс матрица, содержащий следующие поля: int rows, cols;//количество строк и столбцов vector <vector <float>>...

Выражение должно иметь тип указателя
if (Settings::Misc::misc_Bhop) { if (pCmd->buttons & IN_JUMP && !(!flag->GetMoveType & MOVETYPE_LADDER)) { static bool...

Выражение должно иметь тип указателя
#include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; struct laiks { int h; int m; int s; ...

Выражение должно иметь тип указателя
что тут не так IClientEntity *player= I::EntList->GetClientEntity(I::Engine->GetLocalPlayer()); player->GetEyeAngles()->y =...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru