Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/134.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为typedef定义的对象添加Stream方法 让我们在C++代码中定义一个自定义类型来处理3D中的向量: typedef tuple<double,double,double> vector3d; typedef元组向量3d;_C++_Typedef - Fatal编程技术网

为typedef定义的对象添加Stream方法 让我们在C++代码中定义一个自定义类型来处理3D中的向量: typedef tuple<double,double,double> vector3d; typedef元组向量3d;

为typedef定义的对象添加Stream方法 让我们在C++代码中定义一个自定义类型来处理3D中的向量: typedef tuple<double,double,double> vector3d; typedef元组向量3d;,c++,typedef,C++,Typedef,是否可以添加一个方法,以便我可以使用以下方法快速输出其坐标: vector3d somevector(1,1,1); cout << somevector << "\n"; vector3d-somevector(1,1,1); 对于ostream,不能过载 typedef tuple<double,double,double> vector3d; ostream& operator<<(ostream& os, const v

是否可以添加一个方法,以便我可以使用以下方法快速输出其坐标:

vector3d somevector(1,1,1);
cout << somevector << "\n";
vector3d-somevector(1,1,1);
对于
ostream
,不能过载

typedef tuple<double,double,double> vector3d;

ostream& operator<<(ostream& os, const vector3d& vec)
{
    os << '(' <<
          std::get<0>(vec) << ',' <<
          std::get<1>(vec) << ',' <<
          std::get<2>(vec) << ')';
    return os;
}

int main(int argc, char *argv[])
{
    cout << vector3d(1, 2, 3);
    return 0;
}
typedef元组向量3d;
ostream&operator重载
ostream

typedef tuple<double,double,double> vector3d;

ostream& operator<<(ostream& os, const vector3d& vec)
{
    os << '(' <<
          std::get<0>(vec) << ',' <<
          std::get<1>(vec) << ',' <<
          std::get<2>(vec) << ')';
    return os;
}

int main(int argc, char *argv[])
{
    cout << vector3d(1, 2, 3);
    return 0;
}
typedef元组向量3d;

ostream&operatorIt值得注意的是,该运算符将用于其中包含3个double的所有元组,忽略typedef。值得注意的是,该运算符将用于其中包含3个double的所有元组,忽略typedef