小编use*_*809的帖子

用于检查类型相等性的编译时函数

我需要实现自包含的编译时函数来检查类型相等(没有参数的函数模板bool eqTypes<T,S>()).

自包含意味着不依赖于图书馆.

我对这一切并不擅长.这就是我尝试过的,但这不是我需要的.

template<typename T>
bool eq_types(T const&, T const&) { 
return true;
}

template<typename T, typename U> 
bool eq_types(T const&, U const&) { 
return false; 
}
Run Code Online (Sandbox Code Playgroud)

c++ templates compile-time

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

使用front_inserter而不是back_inserter

伙计们!我试图理解迭代器的工作,所以在下面的代码中,是否可以在不改变底层数据(结构)的情况下将back_inserter更改为front_inserter.请你解释一下原因.如果可以改变,请考虑其关键想法.

int a1[] = { 0, 1, 2, 3, 4, 5, 6 };
int a2[] = { 1, 4, 5 };
std::vector<int> a3;
int a4[] = { 0, 2, 3, 6 };
std::set_difference(a1, a1 + 7, a2, a2 + 3, std::back_inserter(a3));
assert(std::equal(a3.begin(), a3.end(), a4));
Run Code Online (Sandbox Code Playgroud)

谢谢你们!

c++ iterator std

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

标签 统计

c++ ×2

compile-time ×1

iterator ×1

std ×1

templates ×1