我可以使用宏__FILE__
获取文件的名称。 如何获取项目名称?Visual studio 2015.在编译时如何在代码中获取项目名称?
https://msdn.microsoft.com/library/b0084kay.aspx
我可以使用宏__FILE__
获取文件的名称。 如何获取项目名称?Visual studio 2015.在编译时如何在代码中获取项目名称?
https://msdn.microsoft.com/library/b0084kay.aspx
如何做一个简单的例子:
#include "stdafx.h"
#include <iostream>
#include <string>
#if !defined PROJECT_NAME
#define PROJECT_NAME ""
#endif
int _tmain(int argc, _TCHAR* argv[])
{
std::string str(PROJECT_NAME);
std::cout << str;
return 0;
}
在项目属性的预处理定义选项添加以下到已经存在定义的末尾:
PROJECT_NAME = “$(项目名)”;
在项目设置只需添加一个编译器定义。项目名称显然是项目范围的,所以它应该很容易。
您还可以使用$(ProjectName)
构建系统的宏(可用宏可以编辑使用该值的下拉<Edit..>
预处理器定义时可以看到),并且将定义在您在所有包含属性表你的项目。
你可以在这里找到宏:https://msdn.microsoft.com/en-us/library/c02as0cs.aspx – neohope
@neohope,是的。但是,在Visual Studio中查找它们有两个好处:您可以看到值,并且还可以看到由系统的其他组件(如SDK和MSBuild)定义的值。 –
在C++中,argv [0]是可执行文件的名称。如果您使用了默认的项目设置,通常可执行的名称将被设置为项目名称。
int main(int argc, char **argv)
{
std::cout<<"Application name :"<< argv[0]<<endl;
return 0;
}
你需要什么? –
项目>属性> C/C++>预处理器>预处理器定义。添加'PROJECTNAME = $(ProjectName)'。重复发布配置。 –
@HansPassant,配置编辑器中还有一个有用的开关,用于一次编辑所有配置。 –