Visual Studio C++ 示例
- 项目
- 2023/06/16
- 3 个参与者
反馈
本文内容
- GitHub 上的存档 C++ 示例
- ATL 示例
- CLR 和语言示例 - Windows 窗体
- COM 事件示例
显示另外 13 个
Visual Studio C++ 示例可在 Web 上找到。 Microsoft 已生成许多 C++ 示例,这些示例演示了跨多种技术的不同功能。 下面介绍是一些查找其他示例的位置:
-
C++ 代码示例
-
GitHub 上的 Windows 示例
-
Windows 开发人员中心代码示例
-
ADO 代码示例
-
Windows 硬件开发示例
GitHub 上的存档 C++ 示例
Visual Studio 在以前的版本中包含了 C++ 示例代码。 该示例代码要么已与 Visual Studio 一起安装,要么已作为单独的下载项提供。 文档中的许多文章都参考了这些示例。 Visual Studio 不会再安装它们。 相反,GitHub 上提供了存储库。 下表包含每个示例的说明,以及指向存储库中示例目录的链接。
重要
此代码示例旨在阐释一个概念,并且仅显示与此概念相关的代码。 该代码可能不符合特定环境的安全要求,因此不应原样搬用所显示的代码。 我们建议你添加安全性代码和错误处理代码,以使项目更加安全可靠。 Microsoft“按原样”提供此代码示例,不做任何保证。
ATL 示例
ATL 示例 - 高级
展开表
示例名称 | 描述 |
---|---|
ActiveDoc | 演示如何实现活动文档服务器 (Active Document Server)。 |
Async | 通过 URL 异步下载数据。 |
ATLButton | 创建一个根据自身的状态用三种不同的位图显示自身的按钮。 |
ATLDuck | 演示如何与 ATL 控件一起使用连接点。 |
ATLSecurity | 演示如何使用 ATL 安全类来检查安全设置。 |
ATLTraceTool | 显示由 ATLTRACE2 宏生成的输出。 |
“连接” | 说明如何在多线程环境中实现和使用连接点(IConnectionPointContainer 和 IConnectionPoint 接口)。 |
CThreadPool | 演示如何在应用程序中使用线程池,以及实现线程池可以如何提高应用程序的性能。 |
DCOM | 演示如何从运行于不同计算机上的多个客户端调用 COM 对象(在 Windows 服务中实现)。 |
MFCATL | 说明如何能在 MFC 服务器 EXE 中使用 ATL COM 对象。 |
ATL 示例 - 控件
展开表
示例名称 | 描述 |
---|---|
ATLFire | 演示如何用 ATL 生成有窗口控件。 |
CDInfo | 播放 CD 乐曲并在工具提示和饼图显示中显示有关这些曲目的信息。 |
Circ | 创建一个说明属性页并绘制圆形的控件。 |
多边形 | 生成一个实现自定义属性、事件、属性页和对象安全的控件。 |
SubEdit | 创建一个具有超类的 Windows 控件。 |
ATL 示例 - 常规
展开表
示例名称 | 描述 |
---|---|
ATLCollections | 说明 ICollectionOnSTLImpl 和 CComEnumOnSTL 的使用及自定义复制策略类的实现。 |
ATLCon | 说明简单的控件容器。 |
ATLSafeArray | 演示如何使用 CComSafeArray 创建并维护 SAFEARRAY ;还演示如何将 SAFEARRAY 从组件传递到脚本。 |
AutoThread | 演示如何使用 CComAutoThreadModule 类。 |
Beeper | 实现 BSTR 的集合/枚举的分离式接口。 |
CircColl | 使用 ATL 和标准 C++ 库实现对象的集合/枚举。 |
COMMap | 演示带有编译器 COM 支持的 COM 接口映射项宏。 |
CustomString | 演示如何使用 CStringT 的自定义内存分配器来提高多线程应用程序的性能。 |
DispSink | 演示如何在调度接口上使用连接点。 |
ATL 示例 - OLEDB - 使用方
展开表
示例名称 | 描述 |
---|---|
CatDB | 显示 OLE DB 提供程序的架构信息,如表和列。 |
DBViewer | 演示一个中级应用程序,它依赖 CManualAccessor 类来完全控制应用程序的数据绑定。 |
DynamicConsumer | 演示如何使用动态访问器和架构行集合类从数据库中读取元数据。 |
MultiRead | 使用多个线程读取数据库中的表。 |
ATL 示例 - OLEDB - 提供方
展开表
示例名称 | 描述 |
---|---|
AdvancedPV | 实现可更新的 OLE DB 提供程序。 演示一些高级技术。 |
UpdatePV | 实现可更新(读/写)的 OLE DB 提供程序。 |
CLR 和语言示例 - Windows 窗体
展开表
示例名称 | 描述 |
---|---|
BirthdayPicker | 演示如何在 C++ 应用程序中使用 .NET Framework 资源机制。 还演示一些常见的 Window 窗体组件。 |
计算器 | 使用 C++ 和 .NET Framework Windows 窗体类实现一个简单的袖珍计算器。 |
Scribble(使用 MFC) | Scribble 示例的 MFC 实现,进行了更新和扩展以包括新的 .NET 功能。 |
Scribble(Windows 窗体) | Scribble 示例的 Windows 窗体实现,进行了更新和扩展以包括新的 .NET 功能。 |
STLCLR | 演示一些可在使用 STL/CLR 库时使用的功能。 |
COM 事件示例
展开表
示例名称 | 描述 |
---|---|
COMEvents | 演示使用 COM 的事件处理。 |
ComTypeLibfor7 示例
展开表
示例名称 | 描述 |
---|---|
ACDual | 向自动化应用程序添加双重接口。 |
ADOSamp | 实现三层客户端/服务器应用程序。 |
AllInOne | 使用 ATL 实现一种服务器,它公开 STL 集合,并由 MFC 应用程序中的编译器 COM 支持控制。 |
COMMap | 演示带有编译器 COM 支持的 COM 接口映射项宏。 |
“连接” | 演示如何在多线程环境中使用和实现连接点(IConnectionPointContainer 和 IConnectionPoint 接口)。 |
DCOM | 演示如何从运行于不同计算机上的多个客户端调用 COM 对象(在 Windows 服务中实现)。 |
FreeThrd | 演示带有编译器 COM 支持的多线程客户端和*线程服务器。 |
InProc | 演示带有编译器 COM 支持的进程内自动化服务器应用程序。 |
Labrador | 实现一个没有任何用户接口的 EXE 服务器。 |
MFCCalc | 演示带有编译器 COM 支持的自动化服务器应用程序。 |
编译器示例
编译器示例 - 常规
展开表
示例名称 | 描述 |
---|---|
ccWrapper | 演示如何将 C/C++ 编译器标志从其他编译器映射到 Visual C++ 编译器 (cl.exe) 中。 |
编译器示例 - MASM
展开表
示例名称 | 描述 |
---|---|
EuclidStep1 | 纯 C 项目,它演示了用于查找最大公约数的欧几里得算法。 |
EuclidStep2 | EuclidStep1 的扩展,它是 C 与 MASM 混合编程的项目。 欧几里得算法的核心从 .c 文件移到 .asm 文件,并且 .c 文件调入 .asm 文件。 |
PrimesStep1 | 纯 C 项目,它演示了用于查找质数的埃拉托色尼斯筛法。 |
PrimesStep2 | PrimesStep1 的扩展,它是 C 和 MASM 混合编程的项目,该项目将核心算法移到 .asm 文件 。 |
PrimesStep3 | PrimesStep2 的扩展,它添加一个 C 头文件和一个 .asm 包含文件,分别用来声明外部函数和全局数据结构 。 |
CRT 示例
展开表
示例名称 | 描述 |
---|---|
CPUID | 确定正在运行的 CPU 的性能。 |
CRT_Dbg1 | 阐释 C 运行库的基本调试功能。 |
CRT_Dbg2 | 说明 C 运行时调试挂钩函数。 |
DFACObjs | 演示如何使用 _CrtDoForAllClientObjects C 运行时函数来循环访问客户端对象的链接列表。 |
Report | 阐释 C 运行时调试报告函数。 |
RTC | 说明运行时错误检查功能。 |
SecureCRT | 本示例演示了如何升级原本使用已被否决的 CRT 函数的代码,以提高代码安全性。 |
调试示例
展开表
示例名称 | 描述 |
---|---|
EEAddIn | 使用“表达式计算器外接程序 API”来扩展本机调试器表达式计算器。 |
合成示例
展开表
示例名称 | 描述 |
---|---|
TraceMan | 提供有关与应用程序相关的程序集的信息,以及以可读的形式提供这些程序集在本机合成缓存中的状态的信息。 |
Hilo 示例
展开表
示例名称 | 描述 |
---|---|
Hilo | Hilo 是一系列文章和示例应用程序。 它们演示了如何使用 Windows 7、Visual Studio 和 C++ 构建高性能的响应式客户端应用程序。 Hilo 提供源代码和指南,有助于你设计和开发引人注目的触控 Windows 应用程序。 此示例已针对 Visual Studio 2013 进行了更新。 它包括 AsyncLoaderMemoryManager.cpp 文件(第 36 行和第 37 行)的热修复,解决了常见的崩溃问题 。 |
国际示例
展开表
示例名称 | 描述 |
---|---|
IME | 演示如何控制输入法编辑器模式以及如何实现 IME 级别 3。 |
SatDLL | 演示在 Win32 应用程序中实现多语言资源的推荐方法。 |
UniRes | 说明 Unicode 资源文件的用法。 |
语言示例 - 常规
展开表
示例名称 | 描述 |
---|---|
Data | 演示对 SQL 数据库的简单访问。 |
MEDriver | 说明如何通过从 COM 服务器的类型库自动生成的 .NET Framework 包装器使用 COM 事件(从非托管 COM 服务器激发)。 |
Nile | 演示 ASP.NET Web 窗体和 ASP.NET Web 服务。 |
QStat | 演示如何创建一个 DLL 来包装对 COM 对象的访问并将它的功能向 .NET Framework 客户端公开。 |
Scribble | 演示如何使用 C++/CLI 和 .NET Framework 类开发 Windows 窗体 MDI 应用程序。 |
TilePuzzle | 演示托管组件(用 C++ 和 C# 编写)和本机组件(使用 COM 特性用 C++ 编写)之间的互操作性。 |
MFC 示例
MFC 示例 - 高级
展开表
示例名称 | 描述 |
---|---|
Collect | 演示 MFC C++ 基于模板的集合类和标准的预生成集合类。 |
Cube | 使用 MFC 设备上下文以及 OpenGL 的资源上下文的 OpenGL 应用程序。 |
DLLHusk | 将基础类库的 DLL 版本与应用程序和自定义 DLL 共享。 |
DLLScreenCap | 可被静态或动态链接到 Microsoft 基础类库的常规 DLL。 |
MTGDI | 使用框架的文档和视图单文档界面 (SDI) 支持,演示如何在多个线程间共享 GDI 资源。 |
MTMDI | 多线程说明,其中在单独的用户界面线程中处理用户界面事件。 |
MTRecalc | 多线程说明,其中在辅助线程中执行重新计算。 |
Mutex | 基于对话框的应用程序,它创建两个 CWinThread 对象,并在用户的控制之下将它们用于执行任务。 |
Speakn | 演示使用用户定义资源的多媒体声音。 |
MFC 示例 - 控件
展开表
示例名称 | 描述 |
---|---|
Button | 演示就地活动菜单、常用属性页和“关于”框控件选项的使用。 |
Circ | 说明 ActiveX 控件的基础功能。 其中包括控件绘制、常用和自定义属性、 |