在数组计数函数中插入多个元素
Insert multiple elements in array - time count function
我正在为C 进行练习,该练习需要模拟服务队列,并要求使用圆形,一个维度阵列进行操作。因此,当客户来插入时,它需要在队列中,他的名字,卡的数量和排在队列的到达时间。
所以我的第一个问题是我如何在数组的一个位置输入所有这些元素?(我不知道它是数组还是位置的单元格,英语不是我的本地人)数组中只有一个位置,我必须将他的所有信息插入一个位置。我已经知道有关如何从圆形队列中插入或提取元素的条件,我只是不知道如何为其中的许多人做。
其次,它要求打印客户必须在队列中等待多少时间,具体取决于他在他面前等待多少时间(尽管不必太确切)。
对于第一个问题:您可以创建代表数据集合的类或结构,然后将整个结构放入您的容器中?
(编辑:客户现在是一个类,有一个构造函数;添加的实例示例)您将要清理一点,但类似:
class Customer {
private:
std::string m_name;
int m_card_number;
int m_arrival_time;
public:
Customer() : m_card_number(0), m_arrival_time(0) { } // might need default ctor
Customer(const std::string name, int card_number, int_arrival time)
: m_name(name), m_card_number(card_number), m_arrival_time(arrival_time)
{ }
};
std::dequeue<Customer> service_queue; // or your container here
Customer c = Customer(name, card_num, current_time);
service_queue.push_back(c);
第二个问题;如果您不需要持续时间,只需要与差异进行工作,那么一个解决方案就是使用时钟。只是不要忘记将时间差(在tick中)划分并需要转换为秒。
我会将结构推入您的队列,每个结构将保持所需的必要元素。
struct Customer
{
string name;
int ID;
double change;
}
//in add function...
Customer newCustomer
cin >> newCustomer.name >> newCustomer.ID >> newCustomer.change;
queue.push_back(newCustomer);
retreiving data is simply asking for each element
//in a loop printing out the queue
std::cout << iter->name << iter->ID << iter->change
相关文章:
- 如何在向量数组中插入元素?
- 有没有更快的方法可以在 std::vector 中插入元素
- 映射C++按值排序和插入元素
- 如何在一对集合的向量中插入元素?vector<pair<int,set<string>>>
- 当索引位于末尾和空数组时,向数组插入元素时出现问题
- 在 QSet 中插入元素<QString>并检索 ,删除 QSet 的最后一项
- C++ 在列表末尾插入元素的列表的 STL 向量
- 插入元素后矢量容量增加
- 如何在 c++ 集中插入元素,直到按下 Enter 键
- C++向量插入元素
- 有没有办法在unordered_map的某个位置插入元素
- 重新插入元素可以"re-validate"迭代器吗?
- 内部源代码 - 在链接列表实现中插入元素上的删除会破坏整个应用程序
- 在链表中插入元素
- stl 中是否有任何数据结构可以在 O(1) 或 O(log n) 中插入元素,我可以在其上编写自己的bin_searc
- 如何在将数据结构插入元素后继续迭代数据结构
- 有没有一种方法可以在std::向量的特定位置重复插入元素
- 在向量 (C++) 中保留插入元素的地址
- 插入元素后Unordered_map变空,我做错了什么
- 循环a std :: unordered_map,序列始终是i插入元素的序列