
Visual C++ 2017 从入门到精通
文章平均质量分 79
学习该书中内容时遇到的各种问题。
书籍:《Visual C++ 2017从入门到精通》
环境:visual studio 2022
书籍下载:https://download.youkuaiyun.com/down
代码下载:https://gitcode.com/qq_20725221/VisualC2017
程工的学习乐园
当某一天你意识到——生命不息,学习不止时,那么你就成长了。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[例9.2]一个简单的MFC ODBC的程序(不通过向导选择数据源)
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022说明:本例程的内容和书中的实现方式相差较大,由于开发环境不一样,本节内容是自己在网上搜索了很多资料后实现的,关于SQL Server,ODBC Driver的安装,DNS数据源的添加,数据库的创建及表格的创建等,可参考其他内容。原创 2025-06-10 17:34:09 · 406 阅读 · 0 评论 -
[例8.24]单独使用类CSemaphore实现线程同步
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-05 10:06:49 · 340 阅读 · 0 评论 -
如何通过信号量对象实现互斥对象的功能
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.24]单独使用类CSemaphore实现线程同步可以通过配置信号量(CSemaphore)的初始计数和最大计数为 1,将其用作互斥锁(Mutex)。这种技术本质上是将信号量转换为二进制信号量,从而实现互斥访问。原创 2025-06-04 16:35:03 · 928 阅读 · 0 评论 -
详细介绍CSemaphore
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.24]单独使用类CSemaphore实现线程同步CSemaphore是MFC(Microsoft Foundation Classes)中用于实现信号量同步的类,封装了 Windows API 的函数。它通过计数信号量机制控制对共享资源的并发访问,适用于需要的场景(如连接池、资源池管理)。原创 2025-06-04 16:30:12 · 578 阅读 · 0 评论 -
[例8.23]单独使用类CEvent实现线程同步
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-04 16:05:54 · 189 阅读 · 0 评论 -
详细介绍CEvent
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.23]单独使用类CEvent实现线程同步CEvent是 MFC(Microsoft Foundation Classes)中用于线程同步的核心类,封装了 Windows API 的函数,提供了一种灵活的线程间通信机制。它通过(Event Object)的状态(有信号/无信号)控制线程的执行流程,适用于需要或的场景。原创 2025-06-04 15:20:24 · 893 阅读 · 0 评论 -
[例8.22]单独使用CMutex类实现线程同步
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-04 14:43:02 · 300 阅读 · 0 评论 -
详细介绍CMutex
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.22]单独使用CMutex类实现线程同步CMutex是 MFC(Microsoft Foundation Classes)中用于实现跨进程互斥的同步对象,封装了 Windows API 的Mutex机制。与不同,CMutex可以用于不同进程间的资源同步,适用于需要全局互斥访问共享资源的场景(如跨进程文件操作、数据库连接池管理等)。原创 2025-06-04 14:04:50 · 926 阅读 · 0 评论 -
[例8.21]联合使用类CCriticalSection和CSingleLock来同步线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-04 13:44:08 · 337 阅读 · 0 评论 -
详细介绍CSingleLock
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.21]联合使用类CCriticalSection和CSingleLock来同步线程是 MFC(Microsoft Foundation Classes)中用于线程同步的 RAII(Resource Acquisition Is Initialization)类,封装了对或其他同步对象(如CMutex)的加锁和解锁操作。它通过自动管理锁的生命周期。原创 2025-06-04 13:31:36 · 731 阅读 · 0 评论 -
详细介绍CWinThread
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022CWinThread是 MFC(Microsoft Foundation Classes)中用于多线程编程的核心类,封装了 Windows 线程 API(如),提供了更高级的线程管理功能。它支持工作者线程(Worker Threads)和用户界面线程(User Interface Threads),适用于需要与 MFC 框架集成的多线程场景。原创 2025-06-04 11:22:03 · 800 阅读 · 0 评论 -
[例8.20]单独使用CCriticalSection对象来同步线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-04 10:52:44 · 240 阅读 · 0 评论 -
详细介绍CCriticalSection
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.20]单独使用CCriticalSection对象来同步线程是MFC(Microsoft Foundation Classes)中用于实现线程同步的核心类,封装了 Windows API 的 临界区(CRITICAL_SECTION) 机制。它通过独占锁的方式确保同一时刻仅有一个线程访问共享资源,适用于单进程内高频短时同步场景。原创 2025-06-04 09:30:59 · 614 阅读 · 0 评论 -
CSyncObject 类详解
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022是 MFC(Microsoft Foundation Classes)中用于多线程同步的核心基类,封装了 Windows API 的同步对象(如互斥量、信号量、事件等)。它提供了线程间协调操作的抽象接口,帮助开发者避免资源竞争和数据不一致问题。原创 2025-06-03 17:47:22 · 583 阅读 · 0 评论 -
[例8.19]AfxBeginThread创建用户界面线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-03 17:35:52 · 1041 阅读 · 0 评论 -
DECLARE_DYNCREATE,IMPLEMENT_DYNCREATE和DECLARE_DYNAMIC,IMPLEMENT_DYNAMIC 可以互换使用吗?
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.19]AfxBeginThread创建用户界面线程在 MFC(Microsoft Foundation Classes)中,和是两组功能不同的宏,不可互换使用。原创 2025-06-03 16:44:06 · 574 阅读 · 0 评论 -
DECLARE_DYNCREATE,IMPLEMENT_DYNCREATE和DECLARE_DYNAMIC,IMPLEMENT_DYNAMIC 的差异
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.19]AfxBeginThread创建用户界面线程在 MFC(Microsoft Foundation Classes)中,和是用于支持 和 的关键宏。原创 2025-06-03 16:39:12 · 719 阅读 · 0 评论 -
详细介绍DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.19]AfxBeginThread创建用户界面线程。原创 2025-06-03 16:32:11 · 422 阅读 · 0 评论 -
[例8.18]_beginthreadex函数的简单示例
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-03 14:26:24 · 274 阅读 · 0 评论 -
[例8.17]利用互斥对象同步_beginthread创建的线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-06-03 14:07:18 · 136 阅读 · 0 评论 -
error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll
配置项动态CRT(/MD)静态CRT(/MT)MFC库类型必须使用共享DLL(动态)可使用静态库运行时依赖需要MFC的DLL文件无需外部DLL错误场景:动态CRT(/MD) + 静态MFC → 冲突。正确组合:动态CRT + 动态MFC(共享DLL)静态CRT + 静态MFC。原创 2025-06-03 11:14:50 · 475 阅读 · 0 评论 -
[例8.16]利用_beginthread不断创建线程
define WM_SHOW_THREADCOUNT WM_USER + 5 //定义一个自定义Windows消息,用于通知主线程更新界面中的线程计数器。//声明消息函数//定义消息函数//处理自定义消息 WM_MYMSG,根据参数 wParam 的值动态更新界面://当 wParam == 1 时,启用按钮 IDC_BUTTON1。//否则,将全局变量 g_nCount(已创建的线程数)格式化为字符串,显示在控件 IDC_THREAD_COUNT 中。原创 2025-06-03 10:40:29 · 275 阅读 · 0 评论 -
分析_beginthread(), _endthread()和_beginthreadex(), _endthreadex()的差异
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:CRT库中的多线程函数。原创 2025-05-30 16:48:37 · 686 阅读 · 0 评论 -
详细分析 _beginthreadex() 和 _endthreadex()
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.18]_beginthreadex函数的简单示例。原创 2025-05-30 16:34:40 · 864 阅读 · 0 评论 -
详细分析 _beginthread() 和 _endthread()
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.16]利用_beginthread不断创建线程。原创 2025-05-30 15:54:27 · 520 阅读 · 0 评论 -
Windows同步机制:临界区、互斥对象、事件对象与信号对象
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-30 15:09:22 · 776 阅读 · 0 评论 -
[例8.15]使用信号量对象同步线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-30 14:47:34 · 298 阅读 · 0 评论 -
详细介绍信号量对象
信号量是一个计数器,表示当前可用资源的数量。线程通过。原创 2025-05-30 14:19:39 · 462 阅读 · 0 评论 -
详细介绍临界区对象
临界区是一段代码区域,访问共享资源(如全局变量、文件句柄)时必须通过同步机制保护。临界区对象(Critical Section)是Windows提供的一种轻量级同步对象,用于管理对这段代码的访问。。原创 2025-05-30 13:27:56 · 446 阅读 · 0 评论 -
Windows互斥对象(Mutex)详解
互斥对象是一种内核级同步对象,表示一个。原创 2025-05-30 11:38:37 · 524 阅读 · 0 评论 -
[例8.14]使用事件对象同步线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-30 11:26:53 · 238 阅读 · 0 评论 -
介绍事件对象
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:使用事件对象同步线程在Windows编程中,事件对象(Event Object)是一种内核同步对象,用于线程或进程间的协调与通信。它通过通知机制控制线程的执行流程,常用于等待特定条件满足或资源可用性。原创 2025-05-30 11:25:23 · 661 阅读 · 0 评论 -
[例8.13]使用互斥对象同步线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-30 09:34:23 · 182 阅读 · 0 评论 -
[例8.12]使用临界区对象同步线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-29 16:14:37 · 198 阅读 · 0 评论 -
详细介绍CRITICAL_SECTION结构体
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022是 Windows API 中用于实现线程同步的核心机制之一,主要用于保护共享资源(如全局变量、文件句柄等),防止多个线程同时访问导致的数据竞争以下从定义、结构、使用方法、注意事项等方面展开详细说明。原创 2025-05-29 15:36:36 · 692 阅读 · 0 评论 -
[例8.11]不用线程同步的卖票程序
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-29 14:46:49 · 183 阅读 · 0 评论 -
[例8.10]PostThreadMessage发送消息给无窗口的消息线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。原创 2025-05-29 13:41:22 · 463 阅读 · 0 评论 -
详细介绍GetMessage()
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.10]PostThreadMessage发送消息给无窗口的消息线程是 Windows 消息循环的核心函数,用于从线程的消息队列中检索消息。它在 Windows GUI 编程中至关重要,负责将系统事件(如用户输入、窗口操作)转化为可处理的消息,并分发给对应的窗口过程。原创 2025-05-29 11:08:07 · 658 阅读 · 0 评论 -
详细介绍MFC中工作线程和消息线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.10]PostThreadMessage发送消息给无窗口的消息线程在 MFC(Microsoft Foundation Classes)框架中,线程分为 和 ,两者的核心区别在于是否拥有消息循环(Message Loop)和窗口资源。以下从定义、功能、实现方式、通信机制及应用场景等方面展开详细分析,并结合代码示例说明其使用方法。原创 2025-05-29 10:38:05 · 794 阅读 · 0 评论 -
详细分析MFC中的消息线程和窗口线程
书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.10]PostThreadMessage发送消息给无窗口的消息线程。原创 2025-05-29 10:21:15 · 506 阅读 · 0 评论