在C++中,如何在一行中生成类变量?例如:我有一门课:
class point{
public:
int x;
int y;
};
如何在一行中创建一个变量,比如java,你可以做new point(x, y)
,目前我确实创建了一个tmp,然后推回到向量或其他什么,像java这样的简单方法可以在一行内完成我所做的吗?
要在堆栈上创建point
类型的变量,可以使用:
point myVariable{5,6};//this creates a point type variable on stack with x=5 and y=6;
所以完整的程序看起来像:
#include <iostream>
class point{
public:
int x;
int y;
};
int main()
{
point myVariable{5,6};
return 0;
}
上面程序的输出可以在这里看到。如果您想创建point
对象的vector
,然后向其中添加对象,那么您可以使用:
//create point objects
point p1{5,6};
point p2{7,8};
//create a vector
std::vector<point> myVector;
//add p1 and p2 into the vector
myVector.push_back(p1);
myVector.push_back(p2);
构建构造函数Point(int x, int y) : x(x), y(y) {}
然后像往常一样推到矢量vec.push_back(Point(x,y))