将值传递到Vector3f
Passing values into a Vector3f
我希望能够将3个值传递给一个对象,然后存储在一个名为Vector3f的类中。Vector3f有x,y,z值;
即:
Object(Vector3f Position); //Class constructor
Object myObject(0,10,20); //Declare object
这样对吗?
或者我必须这样做:
Vector3f vect(0,10,20);
Object myObject(vect);
请帮忙好吗?
如果构造函数接受单个Vector3f
参数,则必须向其传递单个Vector3f
对象,三个浮点数将不起作用。但是你可以用一行写:
Object myObject(Vector3f(0, 10, 20));
你也可以声明一个额外的构造函数来接受三个浮点数
第二个,因为多参数构造函数不能隐式转换
虽然C++11
可以做Object myObject({0, 10, 20});
如果没有额外的信息,您应该采用第二种方法:
Vector3f vect(0,10,20);
Object myObject(vect);
或
Vector3f myObject(vect(0,10,20));
这将首先创建一个Vector3f
的对象,然后将其作为参数传递给Object
类的构造函数,该构造函数将Vector3f
的对象作为参数。
相关文章:
- 为什么可以将左值传递给"std::async",即使它引用了右值
- 当值传递给C++中的运算符重载函数时会发生什么
- 如何将非可变参数值传递给 fmt::format?
- 将 qml 项目值传递给 cpp 后如何与它们进行交互?
- NDK:将文本字段值传递给 c++ 字符串
- 如何将值传递给 lambda 函数
- 如何在C++中将std::string值传递给RegSetValueEx()
- 如何将 c ++ 变量的值传递给 hadoop HDFS 的 bash 系统命令?
- C++ 通过参数将值传递给 char 数组
- 如何将值传递给MFC消息映射函数on_command
- 使用JNI将长值传递给Java
- 如何在不使用 Argv 和 Argc 的情况下将 Sum 值传递给 C++ 程序
- C++ 将值传递给 fStream
- 如何将函数中的多个值传递给C++中的不同函数
- 将多个解析值传递给 addPositionalArgument 函数
- C++为什么将左值传递给move构造函数对模板有效
- 一种自动检测对象的方法,该方法通过值传递给c++中的函数
- 将值传递给main(int,char**)
- 将大于long类型的最大值的值传递给C中的fseek
- 将值传递给atexit