vc中的宏简介- -

VC6.0 添加函数注释宏,VS2010同样可以添加 昨天在玩VC的时候发现VC6.0自带一些宏,觉得好玩就拿来试下,发现其中的函数注释宏非常的实用,拿来分享下,知道的大牛就请绕道了不要喷我,主要是给一些还不知道这个强大功能的小鸟们一些提示。         基本步骤是这样的,首先VC6.0工具栏右键------custom-----Add-ins and Macro Files,选中Sample,然后同样是在custom中,选择command标签 阅读详情

vc中的宏简介- -

Tag : vc     vc.net                                           

记得当初阅读候捷写得《深入浅出MFC》这本书,里面设计到了太多的宏,自我感觉来讲,虽然MFC的宏设计有些精妙之处,但是对于初学者确实一件头疼的事情!MFC内部的关系也足以可以让一个人窒息掉,比起高扩展性的Java,易用的C#,MFC技术感觉有点陈旧了,可能这也是微软自身抛弃MFC的原因!包括整个VC编译环境,随着网络程序的泛滥,vc不是一个好的并且高效的程序编辑环境了。结合自己最近要讲的vc.net的项目,认真理解vc中的宏设计,还是很有必要。

Visual C++ MFC 中常用宏的含义(转贴)


AND_CATCH
AND_CATCH(exception_class,exception _object_point_name) 
说明:

定义一个代码块,它用于获取废除当前TRY块中的附加异常类型。使用CATCH宏以获得一个异常类型,然后使用AND_CATCH宏获得随后的异常处理代码可以访问异常对象(若合适的话)已得到关于异常的特别原因的更多消息。在AND_CATCH块中调用THROW_LAST宏以便把处理过程移到下个外部异常框架。AND_CATCH可标记CATCH或AND_CATCH块的末尾。

注释: 
AND_CATCH块被定义成为一个C++作用域(由花括号来描述)。若用户在此作用域定义变量,那么记住他们只在此作用域中可以访问。他也用于exception_object_pointer_name变量。  
   
ASSERT 
ASSERT(booleanExpression) 
说明: 
计算变量的值。如果结构的值为0,那么此宏便打印一个诊断消息并且表示运行失败。如果条件为非0,那么什么也不做。 诊断消息的形式为: assertion failed in file in line 其中name是元文件名,num是源文件中运行失败的中断号。 在Release版中,ASSERT不计算表达式的值也就不中断程序。如果必须计算此表达式的值且不管环境如何那么用VERIFY代替ASSERT。 
注释: 
ASSERT只能在Debug版中用 
  
ASSERT_VAILD 
ASSERT_VAILD(pObject) 
说明: 
用于检测关于对象的内部状态的有效性。ASSERT_VALID调用此对象的AssertValid成员函数(把它们作为自己的变量来传递)。在Release版中ASSERT_VALID什么也不做。在DEBUG版中,他检查指针,以不同于NULL的方式进行检查,并调用对象自己的AssertValid成员函数。如果这些检测中有任何一个失败的话,那么他会以与ASSERT相同的方法显示一个警告的消息。 
注释: 
此函数只在DEBUG版中有效。 
  
BEGIN_MESSAGE_MAP 
BEGIN_MESSAGE_MAP(the class,baseclass) 
说明: 
使用BEGIN_MESSAGE_MAP开始用户消息映射的定义。在定义用户类函数的工具(.cpp)文件中,以BEGIN_MESSAGE_MAP宏开始消息映射,然后为每个消息处理函数增加宏项,接着以END_MESSAGE_MAP宏完成消息映射。 
  
CATCH 
CATCH(exception_class,exception_object_pointer_name) 
说明: 
使用此用定义一个代码块,此代码用来获取当前TRY块中都一个异常类型。异常处理代码可以访问异常对象,如何合适的话,就会得到关于异常的特殊原因的更多消息。调用THROW_LAST宏以把处理过程一下一个外部异常框架,如果exception-class是类CExceptioon,那么会获取所有异常类型。用户可以使用CObject::IsKindOf成员函数以确定那个特别异常被排除。一种获取异常的最好方式是使用顺序的AND_CATCH语句,每个带一个不同的异常类型。此异常类型的指针由宏定义,用户不必定义。 
注释: 
此CATCH块被定义作一个C++范围(由花括号描述)。如用户在此范围定义变量,那么它们只在吃范围内可以访问。他还可以用于异常对象的指针名。 
  
DEBUG_NEW 
#define new DEBUG_NEW 
说明: 
帮助查找内存错误。用户在程序中使用DEBUG_NEW,用户通常使用new运算符来从堆上分配。在Debug模式下(但定义了一个DEBUG符号),DEBUG_NEW为它分配的每个对象记录文件名和行号。然后,在用户使用CMemoryState::DumpAllObjectSince成员函数时,每个以DEBUG_NEW分配的对象分配的地方显示出文件名和行号。 为了使用DEBUG_NEW,应在用户的资源文件中插入以下指令: #define new DEBUG_NEW 一旦用户插入本指令,预处理程序将在使用new的地方插入DEBUG_NEW,而MFC作其余的工作。但用户编译自己的程序的一个发行版时,DEBUG_NEW便进行简单的new操作,而且不产生文件名和行号消息。 
  
DECLARE_DYNAMIC 
DECLARE_DYNAMIC(class_name) 
说明: 
但从CObject派生一个类时,此宏增加关于一个对象类的访问运行时间功能。把DECLARE_DYNAMIC宏加入类的头文件中,然后在全部需要访问词类对象的.CPP文件中都包含此模块。如果像所描述那样使用DELCARE_DYNAMIC和IMPLEMENT_DYNAMIC宏,那么用户便可使用RUNTIME_CLASS宏和CObject::IsKindOf函数以在运行时间决定对象类。如果DECLARE_DYNAMIC包含在类定义中,那么IMPLEMETN_DYNAMIC必须包含在类工具中。 
  
DECLARE_DYNCREATE 
DECLARE_DYNCREATE(class_name) 
说明: 
使用DECLARE_DYNCRETE宏以便允许CObject派生类的对象在运行时刻自动建立。主机使用此功能自动建立新对象,例如,但它在串行化过程中从磁盘读一个对象时,文件及视图和框架窗应该支持动态建立,因为框架需要自动建立它。把DECLARE_DYNCREATE宏加入类的.H文件中,然后在全部需要访问此类对象的.CPP文件中包含这一模式。如果DECLARE_DYNCREATE包含在类定义中,那么IMPLEMENT_DYNCREATE必须包含在类工具中。 
  
DECLARE_MESSAGE_MAP 
DECLARE_MESSAGE_MAP() 
说明: 
用户程序中的每个CCmdTarget派生类必须提供消息映射以处理消息。在类定义的末尾使用DECLARE_MESSAGE_MAP宏。接着,在定义类成员函数的.CPP文件中,使用BEGIN_MESSAGE_MAP宏,每个用户消息处理函数的宏项下面的列表以及END_MESSAGE_MAP宏。 
注释: 
如果在DECLARE_MESSAGE_MAP之后定义任何一个成员,那么必须为他们指定一个新存取类型(公共的,私有的,保护的)。 
  
DECLARE_SERIAL 
DECLARE_SERIAL(class_name) 
说明: 
DECLARE_SERIAL为一个可以串行化的CObject派生类产生必要的C++标题代码。串行化是把某个对象的内容从一个文件读出和写入一文件。在.H文件中使用DECLARE_SERIAL宏,接着在需要访问此类对象的全部.CPP文件中包含此文件。如果DECLARE_SERIAL包含在类定义中,那么IMPLEMENT_SERIAL必须包含在类工具中。DECLARE_SERIAL宏包含全部DECLARE_DYNAMIC,IMPLEMENT_DYCREATE的功能。 
  
END_CATCH 
END_CATCH 
说明: 
标识最后的CATCH或AND_CATCH块的末尾。 
  
END_MESSAGE_MAP 
END_MESSAGE_MAP 
说明: 
使用END_MESSAGE_MAP宏结束用户的消息映射定义 
IMPLEMENT_DYNAMIC 
IMPLEMENT_DYNAMIC(class_name,base_class_name) 
说明: 
通过运行时在串行结构中为动态CObject派生类访问类名和位置来产生必要的C++代码。在.CPP文件中使用IMPLEMENT_DYNAMIC宏,接着一次链接结果对象代码 
  
IMPLEMENT_DYNCREATE 
IMPLEMENT_DYNCREATE(class_name,base_class_name) 
说明: 
通过DECLARE_DYNCREATE宏来使用IMPLEMENT_DYNCREATE宏,以允许CObject派生类对象在运行时自动建立。主机使用此功能自动建立对象,例如,但它在串行化过程中从磁盘读去一个对象时,他在类工具里加入IMPLEMENT_DYNCREATE宏。若用户使用DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE宏,那么接着使用RUNTIME_CLASS宏和CObject::IsKindOf成员函数以在运行时确定对象类。若declare_dyncreate包含在定义中,那么IMPLEMENT_DYNCREATE必须包含在类工具中。 
  
IMPLEMENT_SERIAL 
IMPLEMENT_SERIAL(class_name,base_class_name,wSchema) 
说明: 
通过运行时在串行结构中动态CObject派生类访问类名和位置来建立必要的C++代码。在.CPP文件中使用IMPLEMENT_SERIAL宏,然后一次链接结果对象代码。 
  
ON_COMMAND 
ON_COMMAND(id,memberFxn) 
说明: 
此宏通过ClassWizard或手工插入一个消息映射。它表明那个函数将从一个命令用户接口(例如一个菜单项或toolbar按钮)处理一个命令消息。当一个命令对象通过指定的ID接受到一个Windows WM_COMMAND消息时,ON_COMMAND将调用成员函数memberFxn处理此消息。在用户的消息映射中,对于每个菜单或加速器命令(必须被映射到一个消息处理函数)应该确实有一个ON_COMMAND宏语句。 
  
ON_CONTROL 
ON_CONTROL(wNotifyCode,id,memberFxn) 
说明: 
表明哪个函数将处理一个常规控制表示消息。控制标识消息是那些从一个控制夫发送到母窗口的消息。 
  
ON_MESSAGE
 
ON_MESSAGE(message,memberFxn) 
说明: 
指明哪个函数将处理一用户定义消息。用户定义消息通常定义在WM_USER到0x7FF范围内。用户定义消息是那些不是标准Windows WM_MESSAGE消息的任何消息。在用户的消息映射中,每个必须被映射到一个消息处理函数。用户定义消息应该有一个ON_MESSAGE宏语句。 
  
ON_REGISTERED_MESSAGE 
ON_REGISTERED_MESSAGE(nmessageVarible,memberFxn) 
说明: 
Windows的RegisterWindowsMesage函数用于定义一个新窗口消息,此消息保证在整个系统中是唯一的。此宏表明哪个函数处理已注册消息。变量nMessageViable应以NEAR修饰符来定义。 
  
ON_UPDATE_COMMAND_UI 
ON_UPDATE_COMMAND_UI(id,memberFxn) 
说明: 
此宏通常通过ClassWizard被插入一个消息映射,以指明哪个函数将处理一个用户接口个更改命令消息。在用户的消息映射中,每个用户接口更改命令(比讯被映射到一个消息处理函数)应该有一个ON_UPDATE_COMMAND_UI宏语句。 
  
ON_VBXEVENT 
ON_VBXEVENT(wNotifyCode,memberFxn) 
说明: 
此宏通常通过ClassWizard被插入一个消息映射,以指明哪个函数将处理一个来自VBX控制的消息。在用户的消息映射中每个被映射到一消息处理函数的VBX控制消息应该有一个宏语句。 
  
RUNTIME_CLASS 
RUNTIME_CLASS(class_name) 
说明: 
使用此宏从c++类民众获取运行时类结构。RUNTIME_CLASS为由class_name指定的类返回一个指针到CRuntimeClass结构。只有以DECLARE_DYNAMIC,DECLARE_DYNCREATE或DECLARE_SERIAL定义的CObject派生类才返回到一个CRuntimeClass结构的指针。 
  
THROW 
THROW(exception_object_pointer) 
说明: 
派出指定的异常。THROW中断程序的运行,把控制传递给用户程序中的相关的CATCH块。如果用户没有提供CATCH块,那么控制被传递到一个MFC模块,他打印出一个错误并终止运行。 
  
THROW_LAST
 
THROW_LAST() 
说明: 
此宏允许用户派出一个局部建立的异常。如果用户试图排除一个刚发现的异常,那么一般此异常将溢出并被删除。使用THROW_LAST,此异常被直接传送到下一个CATCH处理程序。 
  
TRACE 
TRACE(exp) 
说明: 
把一个格式化字符串送到转储设备,例如,文件或调试监视器,而提供与printf相似的功能。同MS_DOS下C程序的printf一样,TRACE宏是一个在程序运行时跟踪变量值的方便形式。在DEBUG环境中,TRACE宏输出到afxDump。在Release版中他不做任何工作。 
注释: 
此宏只在MFC的DEBUG版中有效。 
  
TRACE0 
TRACE0(exp) 
说明: 
与TRACE相似,但他把跟踪字符串放在代码段中,而不是DGROUP,因此使用少的DGROUP空间。TRACE0是一组跟踪宏的一个变体,这些宏可用于调试输出。这一组包括TRACE0,TRACE1,TRACE2和TRACE3,这些宏不同在于所取参数的数目不同。TRACE0只取一个格式化字符串并可用于简单文本消息。TRACE1取一格式化字符串加上一个变量——一个将转储的变量。同样,TRACE2,TRACE3分别取2个或3个参数(在格式化字符串之后)。如果用户以便以了应用程序的发行版,那么它只把数据转储到afxDump。 
注释: 
此宏只在MFC的DEBUG中有效。 
  
  
TRACE1 
TRACE1(exp,param1) 
说明: 
参见TRACE0 
  
TRACE2 
TRACE2(exp,param1,param2) 
说明: 
参见TRACE0 
  
TRACE3 
TRACE3(exp,param1,param2,param3) 
说明: 
  
TRY 
TRY 
说明: 
使用此宏建立一TRY块。一个TRY识别一个可排除异常的代码块。这些异常在随后的CATCH和AND_CATCH块处理。传递是允许的:异常可以传递一个外部TRY块,或者忽略它们或者使用THROW_LAST宏。 
  
VERIFY 
VERIFY(booleanExpression) 
说明: 
在MFC的DEBUG版中,VERIFY宏计算它的变量值。 如果结果为0,那么宏打印一个诊断消息并中止程序。如果条件不为0,那么什么工作也不作。 诊断有如下形式: assertion failed in file in line 其中name是源文件的名字,num是在源文件中失败的中止行号。在MFC的Release版中,VERIFY计算表达式值但不打印或中止程序。例如:如果表达式是个函数调用,那么调用成功。

转载自:http://windshowzbf.bokee.com/2552250.html

VC中一个关于宏的使用问题 A2W W2A VC中一个关于宏的使用问题文/赵湘宁    这儿是个关于宏的问题,我曾用过ATL的串转换宏,包括W2A,开始有些东西我还不太明白。为了使用这些宏,必须在函数的开始处用USES_CONVERSION来初始化某些局部变量。用就用吧,但是看看这个宏的定义,它有类似下面的代码:// 在atlconv.h文件中#define USES_CONVERSION /int _convert; _con 阅读详情

相关推荐

在VC中实现自定义代码注释的宏

本文还有配套的精品资源,点击获取 简介:宏是C/C++等编程语言中强大的预处理工具,能够通过#define关键字简化代码和提高开发效率。本文详细探讨了在Visual C++(VC)环境中如何利用宏自定义代码注释,通过特定格式的注释模板,增强代码的可读性和维护性。文中通过实际示例展示了如何创建注释宏,以及如何通过MODIFY.DSM和MODIFY.VCM等配置文件应用这些宏,...

weixin_42514540的博客 1366

DECLARE_DYNAMIC

DECLARE_DYNAMIC 宏的含义  DECLARE_DYNAMIC(class_name)   说明:    但从CObject派生一个类时,此宏增加关于一个对象类的访问运行时间功能。把DECLARE_DYNAMIC宏加入类的头文件中,然后在全部需要访 问词类对象的.CPP文件中都包含此模块。如果像所描述那样使用DELCARE_DYNAMIC和IMPLEMENT_DYNAMIC宏,那么用户便可使 用RUNTIME_CLASS宏和CObject::IsKindOf函数以在运行时间决定对象类。如果DEC

lost_forget的专栏 6132

Modelsim安装教程以及管理员身份运行patch_dll.bat时找不到文件mgls.dll的解决

Modesim安装教程 Modesim版本有很多,但是安装方式大都相同,我们以modesim.10.5为例,电脑使用的是win10 64位,讲一下安装过程中的步骤以及出现问题的解决方法 一 安装 1.首先解压安装包,在解压的安装包内选择应用程序,右键选择管理员运行。 2.稍等一会,有的电脑会弹出是否允许modesim进行更改,选择 是 即可,然后出现下面的界面,点击下一步。 3.弹出此界面选择安装路径,选择安装路径,我是在D盘新建的文件夹,直接把文件夹中的路径复制在框内。文件夹名称切记不要带中文 4.

weixin_48564372的博客 1万+

Visual C++ MFC 中常用宏的含义

AND_CATCHAND_CATCH   AND_CATCH(exception_class,exception _object_point_name)   说明:   定义一个代码块,它用于获取废除当前TRY块中的附加异常类型。使用CATCH宏以获得一个异常类型,然后使用AND_CATCH宏获得随后的异常处理代码可以访问异常对象(若合适的话)已得到关于异常的特别原因的更多消息。在AND_CATC

小温的专栏 1201

Spring Boot 实现多图片上传并回显,涨姿势了~

上传 Controller的代码非常简单,由于用了SpringMVC框架,所以直接用MultipartFile来接即可。由于是多图片上传所以用数组来接。此处应该注意参数名应该和<input>中的name值相对应: @RequestMapping("/pic") @ResponseBody publicResponseEntity<String>pic(MultipartFile[]pictures)throwsException{ ResponseEnti...

weixin_54556126的博客 894

Workbuddy+DeepSeek V4傻瓜流配置全指南:API接入、模型切换与Agent实战

AI编程助手的核心价值不在于模型本身,而在于如何稳定、安全、低门槛地调用其能力。Agent作为智能体范式,依赖可靠的运行时环境与标准化API通信;DeepSeek V4系列凭借高吞吐、低延迟和强工具调用支持,成为当前生产级Agent的理想引擎。Workbuddy则通过本地配置管理、环境变量注入与UTF-8无BOM容错等工程设计,将复杂部署简化为可复现、可版本化、可团队协同的实践流程。本文聚焦API接入路径下的真实卡点——从Key获取验证、models.json字段语义到沙箱权限控制,覆盖开发者在Window

weixin_33702545的博客 2376

二、C++、DECLARE_DYNAMIC与IMPLEMENT_DYNAMIC宏

DECLARE_DYNAMIC:声明“运行时类型识别”宏,存在于.h文件中 语法:DECLARE_DYNAMIC(派生类) IMPLEMENT_DYNAMIC:实现“运行时类型识别”宏,存在于.cpp文件中 语法:DECLARE_DYNAMIC(派生类,基类) 作用:使得在MFC框架下能够运行所建的派生类,此派生类继承于MFC中的基类 ...

ARM_qiao的博客 4132

DataWorks PyODPS第三方包全攻略:从打包到加载的完整流程

本文详细介绍了在DataWorks的PyODPS节点中使用第三方Python包的完整流程,包括环境限制、打包工具pyodps-pack的使用、资源上传与加载实战,以及特殊场景处理技巧。通过本文,开发者可以掌握在MaxCompute受限环境中灵活使用自定义依赖的方法,提升数据处理效率。

dd012的博客 990

宏DECLARE_DYNCREATE与DECLARE_DYNAMIC

一、MSDN的解释 启用 CObject对象 --将动态创建的派生类在运行时。 DECLARE_DYNCREATE(class_name ) 目的:使每个CObject的对象在运行的时候具备动态创建的能力,Application Farmework框架利用这种能力来创建对象。 例如,创建的新视图,当您打开新文档。 文档,查看,并且,框架类应支持动态创建,因为框架需要动态创建它们。 h ,模块中加入DECLARE_DYNCREATE宏,然后在每个需要访问这个类的对象的 .cpp 文件中包含这个模块.

sinat_31608641的博客 2027

FastAPI + React:现代 Web 前后端分离开发的全栈实践指南

• 部署:CI/CD 双流水线,前端 push → GitHub Actions → Cloudflare Pages;• 后端:分层结构 routers → services → repositories → models,单测覆盖率 90 %。• 接口缓存:Redis + FastAPI Depends 实现接口级缓存,读 QPS 提升至 5 k。• 前端:BFF 由 React Query 代理,统一缓存、重试、分页。GET /items/{id} 详情。,前端同学无需等 Mock 即可联调。

未来已来,AI时代,学AI编程,做AI量化,就来大鹏AI教育。 1494

Python与西门子PLC数据交互实战:基于Snap7的跨平台工业通信指南

本文详细介绍了如何使用Python和Snap7库实现与西门子PLC的数据交互。内容涵盖跨平台环境搭建、连接参数配置、数据读写实战及性能优化技巧,为工业自动化、数据采集和智能制造场景提供了一套轻量、灵活且高效的通信解决方案。

vim8coder的博客 286

深入浅出mfc 运行时类型识别(RTTI 、DECLARE_DYNAMIC)、动态创建( DCLARE_DYNCREATE)、永久保存(DECLARE_SERIAL)

只有用DECLARE_DYNAMIC,DECLARE_DYNCREATE或DECLARE_SERIAL定义的CObject的派生类才能返回CRuntimeClass结构指针。4. 程序的模块状态中有所有的RuntimeClass的列表,因此,查找对应的程序支持的RuntimeClass(对比ClassName),获得对应的RuntimeClass;//初始化一个名为"_init_##class_name"的AFX_CLASSINIT静态结构,主要作用是给指定的class_name的。

baidu_16370559的博客 1591

一文吃透:从零到一开发一套 ABAP RAP 应用的完整路径

ABAP RAP开发实战摘要 本文系统介绍了ABAP RESTful Application Programming Model (RAP)在企业级应用开发中的实施路径。文章以出差申请业务场景为例,详细拆解了RAP开发的六步主线流程: 数据库表设计:规范主键、审计字段设计 CDS数据建模:通过视图定义业务对象实体及关联 行为定义与实现:使用BDEF声明事务规则,Behavior Pool类实现业务逻辑 业务对象投影:裁剪服务接口视图 服务定义与绑定:按OData协议暴露服务 UI集成测试:支持Fiori E

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 509

VC中的TRACE宏

TRACE宏对于VC下程序调试来说是很有用的东西,有着类似printf的功能;该宏仅仅在程序的DEBUG版本中出现,当RELEASE的时候该宏就完全消失了,从而帮助你调试也在RELEASE的时候减少代码量。使用非常简单,格式如下: TRACE("DDDDDDDDDDD"); TRACE("wewe%d",333); 同样还存在TRACE0,TRACE1,TRACE2。。。分别对应0,1,2。

sky_lily_1985的专栏 991

Figma做原型设计一篇教会你,全栈软件开发必备技能,前后端岗位锐减找工作的底牌

本文介绍了使用Figma进行前端应用原型设计的方法与优势。Figma作为主流设计工具,能够满足大多数应用系统的原型设计需求,强调系统设计应保持简洁合理。文章详细说明了Figma的基本操作流程,包括创建Frame页面、组件使用、交互设置等核心功能,并指出命名规范的重要性。同时对比了Axure、墨刀等其他设计工具的特点,建议根据具体需求选择合适的平台。最后强调原型设计主要关注交互功能展示,业务逻辑应通过需求文档表述。整体而言,Figma凭借其简洁高效的特点,已成为原型设计的优选工具。

有问题或资源连接有缺失的可以私信公众号新潮看世界获取 460

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

VC中常用的宏

VC中常用的宏  (2010-08-29 02:49:15) 转载▼ 标签:  vc   宏   杂谈 分类: 开发     我们在VS环境中开发的时候,会遇到很多宏定义,这些宏可以应用到代码中,或用于编译、工程选项等设置,总之是我们开发中必不可少的工具,有必要做一个总结。有些宏是C/C++定义的,有些宏是VC环境

fly172的专栏 540

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

VC 项目中可以使用的路径宏

VC 项目中可以使用的路径宏: 宏 说明 $(RemoteMachine) 设置为“调试”属性页上“远程计算机”属性的值。有关

冰峰 的专栏 4129

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

扩展VC6的编辑能力-宏

一直感觉vc6不好用,没有像vi,或者emacs命令式的文本编辑能力。写代码的时候,键盘-鼠标平凡的切换,太费力了。如果VC能有命令编辑能力该有多好啊!可惜某在网上找不到这方面的资料,唯一感到欣慰的是,VCIDE有addin 和宏的功能,对这些功能绑定快捷键也是比较方便的。下面是我在codeguru和codeproject上挑选的一些宏。说明:安装宏和绑定快捷键步骤:1. 将代码保存为.d

机器学习和我关注的技术 1519

VC注释宏

VC注释宏是类似这样的宏:{{AFX_MSG_MAP(CDrawView) ON_WM_LBUTTONDOWN() }}AFX_MSG_MAP是由MFC自动生成的一些被注释的代码,MFC的代码添加工具用它来定位代码添加和删除的位置。<p>

hnlwt的专栏 377万+

vc中录制宏来添加注释

vc6如果没有装VA的话可以用宏方法添加注释. 同理用宏可以实现很多激动人心的功能哦:)加注释.net有快捷键,很方便.以下引用自csdn  lzwcom(梅花香自苦寒来) :需要用VBScript写的宏来实现,我有一个仅供参考Sub AddComment()DESCRIPTION:  将选中的段落用//进行注释 dim i  Descr = ActiveDocument.Selection D

lostlander的专栏 1477

VC中用于调试程序的几个宏的使用技巧

VC中用于调试程序的几个宏的使用技巧 摘要:本文介绍了VC中用于调试程序的几个宏的使用技巧 标签:技巧  C  使用 一、TRACE宏   当选择了Debug目标,并且afxTraceEnabled变量被置为TRUE时,TRACE宏也就随之被激活了。但在

特权份子的专栏 547

让人脑洞大开的vc宏高级用法

让人脑洞大开的vc宏高级用法

如鹿渴慕泉水的专栏 1158

3个很有用VC的IDE工具宏

 我在VC6中使用的3个宏工具收藏 新一篇: 用Java实现的Status Bar (3/3) - TestStatusbar.java | 旧一篇: 使用Regex实现的为JFileChooser使用的FileFilter对象的创建类<!--function StorePage(){d=document;t=d.selection?(d.selection.type

rsjrj的专栏 1674

VC/GCC宏一览

C/C++宏大全(转)一、标准预定义宏The standard predefined macros arespecified by the relevant language standards, so they are availablewith all compilers that implement those standards. Older compilers maynot

Deniz的专栏 1062
上一篇: c和c++的include
下一篇: WinAPI【Win32 系统入口函数介绍】WinMain DllMain
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值