小编ben*_*der的帖子

std :: transform和std :: for_each有什么区别?

两者都可用于将函数应用于一系列元素.

在高层次上:

  • std::for_each 忽略函数的返回值,并保证执行的顺序.
  • std::transform 将返回值赋给迭代器,并不保证执行的顺序.

你什么时候喜欢使用那个?有任何微妙的警告吗?

c++ stl-algorithm c++11

52
推荐指数
3
解决办法
4万
查看次数

飞机的3D旋转

我正在做一些事情,我在coord sys A中有一架飞机,上面有一组点.我在空间N中也有一个法向量.如何旋转coord sys A上的点,以便底层平面与N具有相同的法线方向?

想知道是否有人知道如何做到这一点.谢谢

math 3d geometry rotation plane

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

将 Matlab 的 bsxfun 转换为 Eigen

假设我们有一个维度为 MxN 的矩阵 A 和一个维度为 Mx1 的向量 a。在Matlab中,要将“a”与“A”的所有列相乘,我们可以这样做

bsxfun(@times, a, A)
Run Code Online (Sandbox Code Playgroud)

Eigen 中是否有等效的方法,而无需遍历矩阵的列?

我正在尝试做

M = bsxfun(@times, a, A) + bsxfun(@times, a2, A2)
Run Code Online (Sandbox Code Playgroud)

并希望 Eigen 的惰性求值能够使其更加高效。

谢谢!

c++ matlab eigen eigen3

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

条件static_assert

是否有一种优雅的方式在c ++ 11中执行条件 static_assert

例如:

template <class T>
class MyClass
{
    COMPILE_TIME_IF( IsTypeBuiltin<T>::value)
       static_assert(std::is_floating_point<T>::value, "must be floating pt");
};
Run Code Online (Sandbox Code Playgroud)

c++ c++11 c++14

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

标签 统计

c++ ×3

c++11 ×2

3d ×1

c++14 ×1

eigen ×1

eigen3 ×1

geometry ×1

math ×1

matlab ×1

plane ×1

rotation ×1

stl-algorithm ×1