我做了一个非常简单的问题:如何在两个不同的int向量上进行基本运算,如求和,差异或乘积,就像在matlab中一样,使用c ++?确实存在能够做到的任何功能吗? 提前致谢。
答案 0 :(得分:1)
不在标准库中,您将不得不使用第三方库,我不知道您的要求是什么,但您可以查看boost::ublas
之类的内容。
答案 1 :(得分:1)
答案 2 :(得分:0)
根据您的要求(您没有详细说明),您可能正在寻找从std::for_each
到Boost::uBLAS的所有内容......
答案 3 :(得分:0)
使用std::accumulate
累积单个值,例如总金额或总产品。
使用std::inner_product
生成一个值,该值是2个向量中值之间的二元运算符的结果,以及连续结果之间的二元运算。如果您可以正确地表达您的问题,这是一个非常有用的功能。这与MapReduce。
虽然,你真正想要的是std::transform
,它可以对两个输入进行操作并写入第三个输出。
答案 4 :(得分:0)
你可以编写自己的类,比如类Vector,类Matrix,你可以重载运算符,如+, - ,*。或者您可以使用LAPACK,boost ublas等库...