c++ - 4 元素归一化函数的输出
问题描述
我正在尝试开发一个 C++ 函数来规范化 4 元素向量。我认为函数内部的向量数学是正确的,但我不太确定如何从函数中获取归一化的向量元素(不使用全局变量)。
// NORMALIZATION FUNCTION //
double normalizeThis(double q0,double q1,double q2,double q3){
double mag; // unnormalized vector magnitude variable
mag = pow((pow(q0,2)+pow(q1,2)+pow(q2,2)+pow(q3,2)),0.5); // calculating magnitude
q0 = q0/mag; q1 = q1/mag; q2 = q2/mag; q3 = q3/mag; // normalization!!
return q0; q1; q2; q3;
}
解决方案
使用结构化绑定,它看起来像这样......
#include <tuple>
#include <iostream>
using namespace std;
std::tuple<double, double, double, double> normalizeThis(double q0, double q1, double q2, double q3) {
double mag; // unnormalized vector magnitude variable
mag = pow((pow(q0, 2) + pow(q1, 2) + pow(q2, 2) + pow(q3, 2)), 0.5); // calculating magnitude
q0 /= mag; q1 /= mag; q2 /= mag; q3 /= mag; // normalization!!
return std::make_tuple(q0, q1, q2, q3);
}
int main() {
auto [a, b, c, d] = normalizeThis(1., 2., 3., 4.);
std::cout << a << ',' << b << ',' << c << ',' << d << std::endl;
}
推荐阅读
- flutter - 哪一个是性能方面更好的 Text 或提取的 TextWidget 函数?
- discord.js - 无效的位域标志或数字
- python - Pyspark - 用不同的字符替换字符串的一部分(字符数不均匀)
- vba - 如何在 SSRS / Report Builder 自定义代码中调用“SUM”函数
- c++ - 如何在构造函数中将指针数组全部设置为 nullptrs?
- string - 可以使用单个哈希来排列数据吗?
- sql - 当条件动态增长时如何改进 SQL 查询
- bluetooth - RN-52蓝牙模块
- ajax - Laravel:“CSRF 令牌不匹配。”,在正确的代码上
- python - 对象的模棱两可的 Python 引用计数作为类构造函数的参数