Visual Studio的使用

Visual Studio的使用

Visual Studio

可用特殊代码

  • 程序退出时,自动检测内存泄漏

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #ifdef _DEBUG
    #define _CRTDBG_MAP_ALLOC
    #include <crtdbg.h>
    #endif
    //上面的代码一定要置于文件第1行
    int main()
    {
    int tmpDbgFlag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG);
    tmpDbgFlag |= _CRTDBG_LEAK_CHECK_DF;
    _CrtSetDbgFlag(tmpDbgFlag);
    //...
    return 0;
    }
  • Win32控制台应用程序不创建窗口

    1
    #pragma comment(linker,"/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
  • 忽略对scanf等函数的安全警告

    1
    #pragma warning(disable:4996)

为编译好的程序请求管理员权限

  1. 创建manifest.txt文件
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?xml version='1.0' encoding='UTF-8' standalone='yes'?>
    <assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
    <requestedPrivileges>
    <requestedExecutionLevel level='requireAdministrator' uiAccess='false' />
    </requestedPrivileges>
    </security>
    </trustInfo>
    </assembly>
  2. 执行命令
    1
    mt.exe -nologo -manifest  .\manifest.txt -outputresource:example.exe

Visual Studio Code

  • 只显示用户设置的快捷键 @source:user