我们正在考虑将我们的VCS转换为git或subversion.我更喜欢切换到git,但是subversion有一个很好的功能,我没有在git中看到:每个目录访问控制.
我们目前在cvs中有project1,project2存储库,具有不同的权限.我们想拥有一个单独的存储库,其中两个目录project1和project2具有不同的权限.是否可以使用git,因为它与svn一样?
我知道子模块,它可能实现这一点,但我们的目标是能够通过project1和project2中的更改进行一次提交.
我们主要有IP问题,并希望确保有些人无法读取(而不仅仅是推送)某些目录.那么,是应对挑战还是我必须使用git-svn?
谢谢
我有一个具有以下结构的循环:
我的循环被多次调用(它是我程序的主循环),我希望第二步尽可能快.
第二步的天真实现将使用memcmp:
char* calc;
char** list;
int k, n, i;
for(i = 0; i < n; i++) {
if (!memcmp(calc, list[i], k)) {
printf("Matches array %d", i);
}
}
Run Code Online (Sandbox Code Playgroud)
你能想到更快的方式吗?一些东西 :
以下是我的一些想法:
memcmp.xor)我所有的查找数组,并使用内置PCMPGT在如何比较两个以上号码在平行下?.我知道这里有SSE4.2.你认为在这里进行矢量化/ sse是一个好主意吗?如果是,您认为最好的方法是什么?我想说这不是早期优化,但性能在这里至关重要,我需要外循环尽可能快.谢谢
EDIT1:看起来http://schani.wordpress.com/tag/c-optimization-linear-binary-search-sse2-simd/提供了一些有趣的想法.列表中的二进制搜索long似乎要走了......
我正在重构我们目前使用的库,我遇到了以下问题.
我们曾经有过以下的东西:
class Blah
{
float[][] data;
public float[] GetDataReference(int index)
{
return data[index];
}
}
Run Code Online (Sandbox Code Playgroud)
由于各种原因,我已经用1维数组版本替换了这个锯齿状阵列版本,连接内部数组.我的问题是:我怎样才能返回对子数组的引用data?
class Blah
{
float[] data;
int rows;
public float[] GetDataReference(int index)
{
// Return a reference data from offset i to offset j;
}
}
Run Code Online (Sandbox Code Playgroud)
我认为不安全和指针的东西可能有用,是否可行?
有没有办法使用泛型类的集合,而不提供底层类型?我们来解释一下:
这是我想要的:
class TimeSerie<TValue> {
enter code here
}
List<TimeSerie<?>> blah;
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止所要做的:
class TimeSerie {}
class TypedTimeSerie<TValue> : TimeSerie {}
List<TimeSerie> blah;
Run Code Online (Sandbox Code Playgroud)
那么,任何方式使用漂亮的第一个解决方案?(虽然我想在尝试施放时会引发问题,例如循环...)