小编bec*_*cko的帖子

如何在CMake中定义与模式匹配的文件列表?

如何在CMake中定义包含与模式匹配的文件列表的变量?例如,test_*.cpp

如何定义包含与模式不匹配的文件列表的变量?例如,test_*.cpp应匹配所有文件,除了上面匹配的文件.

cmake

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

C++ 中是否有 parallel_for 的 boost 函数?

我需要做一个parallel_for。在标准 C++ 库或 Boost 中是否有一个简单的实现?我还没有找到。

顺便说一下,我正在使用 Ubuntu。所以我不想要 Microsoft 库。

c++ parallel-processing

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

在bash中有do-while循环吗?

是否有一个do- while循环在bash?

我知道如何while在bash中编写循环:

while [[ condition ]]; do
    body
done
Run Code Online (Sandbox Code Playgroud)

是否有类似的结构,但对于一个do- while环,其中body至少执行一次,而不管的while状况?

bash

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

是否y*(1 - x/y)优于y - x,用于计算C++中两个浮点数的差异?

用C++减去两个浮点数会导致灾难性的取消.

在数值稳定性方面,写作是否有利于y * (1 - x / y)代替y - x

c++ floating-point

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

在字符串数组中查找重复条目?

我在Matlab中有一个大的字符串数组.我需要在这个数组中找到重复字符串的索引.也就是说,我期望的输出是在字符串的单元格数组中出现两次或更多次的字符串索引的数组.

我怎样才能做到这一点?

matlab

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

在正确实现 Scott Meyer 的更有效的 C++ 第 22 条:“考虑使用 op= 而不是独立 op”时避免通用引用?

我正在尝试遵循 Scott Meyers 在更有效的 C++ 第 22 条中的建议:“考虑使用op=而不是独立op”。他建议我们可以创建一个模板operator+,以便所有实现的类operator+=自动获得operator+

template<class T>
const T operator+(const T& lhs, const T& rhs)
{ 
    return T(lhs) += rhs; 
}
Run Code Online (Sandbox Code Playgroud)

现在,在《Effective Modern C++》第 25 条中,有一个矩阵加法的示例(第 172 页),其中operator+建议使用右值重载 ,因为如果您知道lhsrhs是右值,则可以使用它们来存储结果,从而防止可能巨大的矩阵的无用副本。所以我添加了重载:

template<class T>
T operator+(T&& lhs, const T& rhs)
{ 
    return std::move(lhs += rhs);
}

template<class T>
T operator+(T const& lhs, T&& rhs)
{ 
    return std::move(rhs += lhs);
}

template<class T>
T operator+(T&& …
Run Code Online (Sandbox Code Playgroud)

c++ templates operator-overloading effective-c++ overload-resolution

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

1/2给出0.5,但sqrt(-1)给出DomainError

这是关于朱莉娅设计的问题.在Julia中,1/2给出0.5,并且通常整数除法返回一个Float,所以4/22.0.这看似合理.

我想知道为什么没有适用同样的推理sqrt.也就是说,对我来说sqrt应该始终返回的一致性要求,Complex特别是sqrt(-1)应该返回im(或者-im,这是另一个讨论).但是,sqrt(-1)给出DomainError.

或者至少应该有一个版本sqrt返回复杂的根(就像分裂,你有div/).

那么,有两个问题:

  1. 这个设计决定(/对比的不一致处理sqrt)之间的原因是什么?
  2. 是否有一个版本sqrt返回复杂的平方根?

julia

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

在Julia的矩阵中添加一行?

如何在Julia中向矩阵添加行?

例如,

mat = [1 2 3; 3 4 2]
Run Code Online (Sandbox Code Playgroud)

我想x = [4 2 1]在最后添加行.我试过了:

push!(mat, x)
Run Code Online (Sandbox Code Playgroud)

但它给出了一个错误.

julia

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

在Julia中向函数内的矩阵添加一行(并将更改传播到外部)?

这类似于这个问题:

在Julia的矩阵中添加一行?

但现在我想在函数中增长矩阵:

function f(mat)
    mat = vcat(mat, [1 2 3])
end
Run Code Online (Sandbox Code Playgroud)

现在,在这个功能之外:

mat = [2 3 4]
f(mat)
Run Code Online (Sandbox Code Playgroud)

但这不起作用.对mat内部所做的更改f不会传播到外部,因为mat内部创建了一个新内容f(请参阅http://docs.julialang.org/en/release-0.4/manual/faq/#functions).

有可能做我想要的吗?

matrix julia

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

提高bash的非整数指数?

如何在bash中将数字提高到非整数指数?

例如,这:

 echo $((10**0.25))
Run Code Online (Sandbox Code Playgroud)

可以在中运行zsh,但在Bash中会出现以下错误:

-bash:10 ** 0.25:语法错误:无效的算术运算符(错误标记为“ .25”)

math floating-point bash

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