小编Dok*_*ott的帖子

刚签出文件时,git说"不受版本控制"

我有一个明显的印象,我的Git repo以某种方式被破坏了.

这是我正在做的序列:

  1. git clone [remote的克隆字符串]

    这创建了一个文件"App/android/AndroidManifest.xml",以及其他许多文件.

  2. git mv App/android/AndroidManifest.xml App/android/AndroidManifestTemplate.xml

    这给出了错误消息"致命:不受版本控制,源= App/And ......"

最初我认为这可能是一个gitignore的事情,但那也不是.我试过git fsck,它没有报告任何内容.

有关如何修复它的任何建议?

git

8
推荐指数
2
解决办法
8113
查看次数

如何传递特征矩阵行引用以将其视为向量?

我有一个对向量引用进行操作的函数,例如

void auto_bias(const Eigen::VectorXf& v, Eigen:Ref<Eigen::VectorXf>> out)
{
  out = ...
}
Run Code Online (Sandbox Code Playgroud)

在某些时候,我需要让这个函数在矩阵行上运行。现在,因为默认的内存布局是列主的,所以我不能只将行指向的数据映射到向量中。那么,我该如何将行传递到上面的函数中以便我可以对其进行操作呢?

不太漂亮的解决方案是有一个临时向量,例如

VectorXf tmpVec = matrix.row(5);
auto_bias(otherVector, tmpVec);
matrix.row(5) = tmpVec;
Run Code Online (Sandbox Code Playgroud)

但有没有办法直接做到这一点?

c++ eigen

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

特征sum(),colwise()。sum()。sum()和rowwise()。sum()。sum()都给出不同的答案

我有以下示例代码:

#include <Eigen/Eigen>
#include <iostream>

int main() {
  Eigen::MatrixXf M = Eigen::MatrixXf::Random(1000, 1000);
  std::cout.precision(17);
  std::cout << M.colwise().sum().sum() << std::endl;
  std::cout << M.rowwise().sum().sum() << std::endl;
  std::cout << M.sum() << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

我使用以下命令进行编译:(g ++ 7.3版,但是我在其他编译器中也看到了这一点)

g++ -O0 -o test -Ieigen-3.3.7 test.cc
Run Code Online (Sandbox Code Playgroud)

输出是

13.219823837280273
13.220325469970703
13.217720031738281
Run Code Online (Sandbox Code Playgroud)

这三个值不应该都一样吗?我毕竟没有使用任何优化。

c++ eigen

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

标签 统计

c++ ×2

eigen ×2

git ×1