2016-08-22 39 views

回答

4

如何做一個簡單的例子:

#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 = 「$(項目名)」;

1

在項目設置只需添加一個編譯器定義。項目名稱顯然是項目範圍的,所以它應該很容易。

您還可以使用$(ProjectName)構建系統的宏(可用宏可以編輯使用該值的下拉<Edit..>預處理器定義時可以看到),並且將定義在您在所有包含屬性表你的項目。

+0

你可以在這裏找到宏:https://msdn.microsoft.com/en-us/library/c02as0cs.aspx – neohope

+0

@neohope,是的。但是,在Visual Studio中查找它們有兩個好處:您可以看到值,並且還可以看到由系統的其他組件(如SDK和MSBuild)定義的值。 –

0

在C++中,argv [0]是可執行文件的名稱。如果您使用了默認的項目設置,通常可執行的名稱將被設置爲項目名稱。

int main(int argc, char **argv) 
{ 
    std::cout<<"Application name :"<< argv[0]<<endl; 
    return 0; 
} 
相關問題