小编Nei*_*ice的帖子

如何删除脚本和可执行文件前面带有".\"的PowerShell要求?

如何删除脚本和可执行文件前面带有".\"的PowerShell要求?

输入"a.exe"而不是".\ a.exe"时显示的PowerShell警告消息:

The command a.exe was not found, but does exist in the current location. Windows PowerShell doesn't load commands from the current location by default. If you trust this command, instead type ".\a.exe".
Run Code Online (Sandbox Code Playgroud)

powershell

15
推荐指数
1
解决办法
2万
查看次数

使用VC++的__assume可以带来可衡量的性能提升吗?

使用VC++可以获得可衡量的性能提升__assume吗?如果是这样,请在答案中张贴带代码和基准的证明.

关于__assume的稀疏MSDN文章:http://msdn.microsoft.com/en-us/library/1b3fsfxw( v = vs.100).aspx

文章提到在是利用__assume(0)使switch通过语句更快__assume(0)荷兰国际集团的default情况.我通过__assume(0)这种方式测量的性能没有增加:

void NoAssumeSwitchStatement(int i)
{
    switch (i)
    {
    case 0:
        vector<int>();
        break;
    case 1:
        vector<int>();
        break;
    default:
        break;
    }
}

void AssumeSwitchStatement(int i)
{
    switch (i)
    {
    case 0:
        vector<int>();
        break;
    case 1:
        vector<int>();
        break;
    default:
        __assume(0);
    }
}

int main(int argc, char* argv[])
{
    const int Iterations = 1000000;
    LARGE_INTEGER start, middle, end;
    QueryPerformanceCounter(&start);
    for (int i = …
Run Code Online (Sandbox Code Playgroud)

c++ performance compiler-optimization visual-c++

10
推荐指数
2
解决办法
2018
查看次数

为什么在C++中是为执行线程从未遇到的局部变量声明分配的堆栈空间?

为什么在C++中是为执行线程从未遇到的局部变量声明分配的堆栈空间?或者,如果C++标准未定义,为什么某些编译器会为执行线程从未遇到的局部变量声明分配堆栈空间?编译器是否只为执行线程遇到的变量声明分配堆栈空间并仍然有效?

为了说明,在调试模式下调用此函数,其中不能遇到变量字符会导致堆栈溢出:

void f()
{
    if (false)
    {
        char chars[INT_MAX];
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ stack-overflow stack

7
推荐指数
2
解决办法
683
查看次数

有没有办法在命令行上使用 devenv.exe 仅链接项目而不是完整构建项目?

有没有办法在命令行上使用 devenv.exe 仅链接项目而不是完整构建项目?

devenv.exe /? 提供了以下命令,这些命令似乎都不能仅链接项目而不是完整构建项目。

/Build /Clean /Command /Deploy /Edit /LCID /Log /NoVSIP /Out /Project /ProjectConfig /Rebuild /ResetAddin /ResetSettings /ResetSkipPkgs /Run /RunExit /SafeMode /Upgrade

我对此很感兴趣,因为/LTCG:PGOPTIMIZE配置文件引导优化的阶段需要重新链接而不重新编译。

msbuild linker command-line visual-studio

5
推荐指数
1
解决办法
1024
查看次数

当该类具有const char*构造函数时,为什么使用const char*变量构造类的未分配临时实例是错误的?

为什么这段代码(从const char*变量构造的未分配的临时变量):

class A
{
public:
    A(const char*) {}
};

int main()
{
    const char* constCharPointerVariable = "StringLiteral";
    A(constCharPointerVariable);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

给出这些错误?

error C2512: 'A' : no appropriate default constructor available
error C2040: 'constCharPointerVariable' : 'A' differs in levels of indirection from 'const char *'
Run Code Online (Sandbox Code Playgroud)

而这段代码(分配的临时变量是从const char*变量构造的):

class A
{
public:
    A(const char*) {}
};

int main()
{
    const char* constCharPointerVariable = "StringLiteral";
    A a(constCharPointerVariable);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

没有错误.

这段代码(从const char*变量static_cast到const char*构造的未分配的临时变量):

class A
{
public:
    A(const char*) {} …
Run Code Online (Sandbox Code Playgroud)

c++ constructor compiler-errors

1
推荐指数
1
解决办法
518
查看次数