如何构造初始化器和deque
how to struct initializer and deque
所以我有。。
struct Polynomial{
deque<long> coefs;
long degree;
Polynomial(initializer_list<long> co_list);
Polynomial(deque<long> & co_list);
Polynomial();
string poly_to_string();
Polynomial add(Polynomial rhs);
Polynomial mult(Polynomial rhs);
Polynomial mult(long factor);
}
对于这些方法,我必须:
多项式(initializer_list cfs)。使用系数的初始值设定项列表初始化实例。-顺序是最高的先出,最低的后出-coes和学位更新。
多项式(deque cfs)。使用系数向量初始化实例-顺序是最高的先出,最低的后出-coes和学位更新。
然后我做了一些方法来添加/倍数/因子多项式,我可以这样做,只是不确定是什么
Polynomial(initializer_list<long> co_list);
Polynomial(deque<long> & co_list);
他们应该做/如何启动它们。。
此外,我该如何启动函数以返回多项式°返回一个长值?
这两个函数是该类型的构造函数。它们告诉编译器如何设置Polynomial
对象,以便为调用成员做好准备。它们最容易被理解为:
struct Polynomial{
deque<long> coefs;
long degree;
Polynomial(initializer_list<long> co_list);
Polynomial(deque<long> & co_list);
};
Polynomial::Polynomial(initializer_list<long> co_list)
{
//at this point, the members are created, but have no values
//so we assign values to the members
coefs.assign(co_list.begin(), co_list.end());
degree = co_list.size();
}
int main()
{
Polynomial mypoly = {3, 4, 5};
//creates a Polynomial variable from an initializer list
//the compiler runs the constructor function automatically
//so now it's members are all properly set, and we can run other functions
mypoly.do_thing();
}
但是,如上所示,Polynomial
构造函数构造这两个成员,然后执行为它们赋值的函数。我们可以通过直接使用预期值构建它们来做得更好:
Polynomial::Polynomial(initializer_list<long> co_list)
:
coefs(co_list.begin(), co_list.end()), //constructed directly
degree(co_list.size())
{
//they already have the needed values, don't need to do anything more
//to finalize the construction
}
相关文章:
- 是否可以初始化不可复制类型的成员变量(或基类)
- C++使用整数的压缩数组初始化对象
- C++初始化基类
- 多成员Constexpr结构初始化
- 复制列表初始化的隐式转换的等级是多少
- 内联映射初始化的动态atexit析构函数崩溃
- 如何在C++中初始化嵌套类中的2个memeber
- 如何声明特征矩阵,然后通过嵌套循环初始化它
- 没有用于初始化C++中的变量模板的匹配构造函数
- 在未初始化映射的情况下,将值插入到映射的映射中
- C++成员初始化
- 为什么在C++中首先初始化成员类
- 同时具有"聚合初始化"和"模板推导"
- 初始化具有非默认构造函数的std::数组项的更好方法
- 是否可以在编译时初始化数组,以便在运行时不会花费时间?
- 我可以使用条件运算符初始化C风格的字符串文字吗
- 在C和C++中初始化结构中的数组
- 为什么 gcc 会给我可能未初始化的警告 deque::insert 带有过滤范围
- 如何构造初始化器和deque
- 简单的 Deque 初始化问题