VS:创建项模板(新建文件后自动在其中添加代码)

VS:创建项模板(新建文件后自动在其中添加代码)


1. 背景

  使用VS2017进行C++编程,在项目中添加新建项,创建cpp文件以实现函数。新建cpp时需要添加一些相关的文件信息,如文件名,创建时间,固定代码模块等。如果新建多个这样的文件,每次复制这些信息嫌麻烦,现希望在VS创建项模板以实现新建项后自动添加文件信息

C++项目

新建项

每次新建项希望自动添加的代码:

// 文件名:
// 创建时间:

#include "pch.h"
#include <iostream>

int main_1()
{

	return 0;
}

2. 实现步骤

1. 新建1.cpp作为项模板,修改所需自动添加的代码。新建不同cpp可变化的内容参考下表中的模板参数。

// 文件名:$itemname$
// 创建时间:$time$

#include "pch.h"
#include <iostream>

int main_$itemname$()
{

	return 0;
}
模板参数说明
clrversion公共语言运行时 (CLR) 的当前版本。
ext_*将 ext_ 前缀添加到任何参数,以引用父模板的变量。
例如 ext_safeprojectname。
guid[1-10]一个用于替换项目文件中的项目 GUID 的 GUID。
可指定最多 10 个唯一的 GUID(例如,guid1)。
itemname在其中使用参数的文件的名称。
machinename当前的计算机名称(例如,Computer01)。
projectname创建项目时由用户提供的名称。
registeredorganization来自 HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization 的注册表项值。
rootnamespace当前项目的根命名空间。 此参数仅适用于项模板。
safeitemname与 itemname 相同,但所有不安全字符和空格替换为了下划线。
safeitemrootname与 safeitemname 相同。
safeprojectname用户在创建项目时提供的名称,但名称中删除了所有不安全字符和空格。
time以 DD/MM/YYYY 00:00:00 格式表示的当前时间。
specifiedSolutionName解决方案的名称。
在选中“创建解决方案目录”时,specifiedSolutionName 具有解决方案名称。
在未选中“创建解决方案目录”时,specifiedSolutionName 为空。
userdomain当前的用户域。
username当前的用户名称。
webnamespace当前网站的名称。
此参数在 Web 窗体模板中用于保证类名是唯一的。
如果网站在 Web 服务器的根目录下,则此模板参数解析为 Web 服务器的根目录。
year以 YYYY 格式表示的当前年份。

2. 导出项模板

导出项模板

选择模板类型

选择导出的项

选择项引用

选择模板选项

模板输出位置

模板启动位置

模板输出位置:C:\Users\Administrator\Documents\Visual Studio 2017\My Exported Templates
模板启动位置:C:\Users\Administrator\Documents\Visual Studio 2017\Templates\ItemTemplates
注意:模板输出位置与模板启动位置并不相同,在VS中真正起作用的是模板启动位置。new template.zip无需解压。
如果需要本文所用的项模板,可直接点击new template.zip下载。

3. 重启VS,新建2.cpp,可发现代码已自动添加。
选择new template模板新建2.cpp

自动添加的代码

3. 参考文献

  1. 如何:创建项模板
  2. 模板参数
  • 18
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值