我试图用C++重新编写一些MatLab代码,并且遇到了这个问题:
currentsign = sign(vector(i));
我在互联网上查看并找到此链接:http://www.mathworks.co.uk/help/techdoc/ref/sign.html
我只是想知道C++中是否有符号函数?如果没有,谁能建议任何有关创建它的教程。
谢谢 :)
最佳答案
template <typename T>
int sign (const T &val) { return (val > 0) - (val < 0); }
Credit due to Ambroz Bizjak。
template <typename T>
std::vector<int> sign (const std::vector<T> &v) {
std::vector<int> r(v.size());
std::transform(v.begin(), v.end(), r.begin(), (int(*)(const T&))sign);
return r;
}
Full example on ideone。
关于c++ - C++签名功能-来自MatLab吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11990030/