小编Pro*_*mer的帖子

如何防止 Visual Studio Code 自动删除空行中的空格

当我从一行移动光标而不在其上键入任何内容时,VS Code 似乎会自动删除该行中的空格,因此,当我将光标放回该行时,它最终会向左对齐,迫使我使用 Tab再次达到所需的缩进级别。我要更改什么设置才能让它不那样做?我试过谷歌搜索这个问题,但所有的答案都是关于用正则表达式删除空行,这根本不是我的问题。

visual-studio-code

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

模板类中的模板方法,类外定义

我希望有一个模板类,里面有模板方法,并且在类外定义该方法.我试着寻找答案,但找不到答案.

例如:

template<typename A> class Type {
private:
    A value;
public:
    template<typename B> A Method(B value) {
        // some code here, it's not important for the sake of this example
    }
}
Run Code Online (Sandbox Code Playgroud)

如何将方法的定义移到Method类体之外?提前致谢.

c++ templates c++11

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

为什么 C++ lambda 会导致额外调用此析构函数

这是程序:

#include <iostream>
#include <functional>

struct Foo
{
    inline Foo() {
        std::cout << "foo constructor" << std::endl;
    }

    inline ~Foo() {
        std::cout << "foo destructor" << std::endl;
    }
};

void NotBroken()
{
    Foo foo;
    std::function<void(Foo&)> callback;
    callback = [](auto&) { // <- notice the auto&
        std::cout << "executed callback" << std::endl;
    };
    callback(foo);
}

void TotallyBroken()
{
    Foo foo;
    std::function<void(Foo&)> callback;
    callback = [](auto) { // <- notice the auto without &
        std::cout << "executed callback" << std::endl;
    };
    callback(foo); …
Run Code Online (Sandbox Code Playgroud)

c++ lambda

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

标签 统计

c++ ×2

c++11 ×1

lambda ×1

templates ×1

visual-studio-code ×1