小编Pau*_*ese的帖子

使用带有可变参数模板结构的std :: visit

我试图理解以下来自http://en.cppreference.com/w/cpp/utility/variant/visit的例子.

#include <iomanip>
#include <iostream>
#include <string>
#include <type_traits>
#include <variant>
#include <vector>


using var_t = std::variant<int, long, double, std::string>;

template<class... Ts> struct overloaded : Ts... { using Ts::operator()...; };
// what is this declaration imply???
template<class... Ts> overloaded(Ts...) -> overloaded<Ts...>;

int main() {
    std::vector<var_t> vec = {10, 15l, 1.5, "hello"};


    for (auto& v: vec) {
        std::visit(overloaded {
            [](auto arg) { std::cout << arg << '\n'; },
            [](double arg) { std::cout << std::fixed << arg << '\n'; }, …
Run Code Online (Sandbox Code Playgroud)

c++ c++17

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

Git:将文件的历史记录从一个存储库复制到另一个存储库

我有两个git存储库说A和B,都包含一个名为file1.cc的文件.是否可以将repo A中file1.cc的历史合并/复制到repo B中的file1.cc?

问题是我们已经将文件从repo A移动到repo B,并且所有文件的历史记录都丢失了.但现在一些开发人员已经开始研究回购B并推动了他们的改变.所以现在我想要从repo A到repo B的一些文件的合并/复制历史记录,这些文件仅适用于某些文件.有可能这样做吗?或者一旦丢失的文件的历史永远丢失?

请帮忙.提前致谢.

git

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

bind函数如何在c ++中用于函数对象

我遇到了以下find_if函数.

find_if (coll.begin(), coll.end(), 
             bind(logical_and<bool>(), 
                  bind(greater<int>(),_1,x), bind(less<int>(),_1,y)
                 )
         );
Run Code Online (Sandbox Code Playgroud)

我怀疑如何评估bind(greater(),_ 1,x)和bind(less(),_ 1,y)并在那里返回bool值?这将不起作用,如下所示.

#include <iostream>
#include <functional>

int main()
{
    using namespace std::placeholders;

    //auto fn = std::bind(std::greater<int>(), 5, _1);
    //std::cout << fn(7) << std::endl;
    //std::cout << typeid(fn).name() << std::endl;

    auto fn1 = std::bind(std::greater<int>(),5,6);
    auto fn2 = std::bind(std::less<int>(),7,5);

    std::cout << std::bind( std::logical_and<bool>(), fn1, fn2 )(); // how this works??
    std::cout << std::logical_and<bool>()(fn1, fn2)();  // Compilation error
}
Run Code Online (Sandbox Code Playgroud)

真的很想知道如何在绑定函数中调用仿函数.有人可以解释这是如何工作的吗?提前致谢.

c++ c++11

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

标签 统计

c++ ×2

c++11 ×1

c++17 ×1

git ×1