Компилятор - g++ из MinGW-w64 (https://cygwin.com/install.html).
В process.h
есть функция _beginthread()
. (docs.microsoft.com). При компиляции g++ -o app.exe app_source.cpp
выдаётся ошибка:
C:\xcvbnm>g++ -o app.exe appsource.cpp
appsource.cpp: In function 'void thread_proc_example(void*)':
appsource.cpp:14:2: error: '_endthread' was not declared in this scope
_endthread();
^~~~~~~~~~
appsource.cpp:14:2: note: suggested alternative: '_hread'
_endthread();
^~~~~~~~~~
_hread
appsource.cpp: In function 'int main(int, TCHAR**)':
appsource.cpp:21:2: error: '_beginthread' was not declared in this scope
_beginthread( thread_proc_example, 0, 0 );
^~~~~~~~~~~~
appsource.cpp:21:2: note: suggested alternative: 'OpenThread'
_beginthread( thread_proc_example, 0, 0 );
^~~~~~~~~~~~
OpenThread
C:\xcvbnm>
Вторая проблема - g++ не знает про conio.h
. Что со всем этим можно сделать? И как компилировать в g++ код, хорошо работающий в Visual Studio?
Пример кода, который не компилируется:
#include <windows.h>
#include <process.h>
#include <stddef.h>
#include <stdlib.h>
//#include <conio.h>
#include <stdio.h>
#include <tchar.h>
using namespace std;
void __cdecl thread_proc_example( void* param )
{
_endthread();
return;
}
int main( int argc, TCHAR* argv[])
{
MessageBoxA(0, "String 01\n", "String 02\n", MB_ICONINFORMATION);
_beginthread( thread_proc_example, 0, 0 );
return 0;
}
Компилятор - g++ из MinGW-w64 (https://cygwin.com/install.html)
Код из вашего примера замечательно компилируется в MinGW-w64 (и там есть так же и conio.h
), но по указанной вами ссылке НЕ MinGW-w64.
Дело в том, что под Windows есть 2 порта gcc: один идёт в составе Сygwin, а второй полностью самостоятельный - MinGW-w64 (http://mingw-w64.org/doku.php) (его же использует MSYS2).
MinGW-w64 можно установить тремя способами:
Онлайн установщик и архивы можно найти здесь: https://sourceforge.net/projects/mingw-w64/files/
Соответственно, рекомендую забыть про Cygwin и использовать более современные MinGW-w64 и MSYS2.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
подскажите, как сделать два и более pagination в одном слайдере
Задача: при нажатии на кнопку появляется блок, где при нажатии на внутреннюю кнопку должно скрываться/появляться окно и меняться фон кнопки...
Почему-то иногда не срабатывает OnMouseDownСначала может сработать несколько раз, потом ему просто пофиг на нажатия (глобальные тачи по экрану)
У меня есть View для каждого метода, я сделал чтобы в хедере задавался параметр для возвращения, а как сделать, чтобы была VIEW?