gpt4 book ai didi

c++ - 如何在循环 C++ 中创建唯一指针?

转载 作者:太空宇宙 更新时间:2023-11-03 10:32:10 24 4
gpt4 key购买 nike

我正在从标准输入读取一个 double 并将其保存到变量 d 中。我希望能够执行此操作的次数不限。我使用以下代码创建指向 d 的指针。

double *pd = new double;
pd = &d;

然后我将这个指针插入一个构造好的堆栈(列表)类中。但是每当我插入超过一倍时,它都会改变所有这些(指针是相同的)。

例。推 2 并得到一个数组 [2]。压入 3 并得到数组 [3, 3] 而不是 [3, 2]。

最佳答案

你为什么要使用指针?

std::vector<double> v;

double d;
while (std::cin >> d)
v.push_back(d);

或者正如克里斯指出的那样:

std::copy(std::istream_iterator<double>(std::cin),
std::istream_iterator<double>(),
std::back_inserter(v));

关于c++ - 如何在循环 C++ 中创建唯一指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13830450/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com