C++ cin是否会影响c++;?

C++ cin是否会影响c++;?,c++,object,new-operator,C++,Object,New Operator,在创建指针并使用new关键字分配内存之前,我正在尝试使用cin获取用户输入。该代码产生一个错误 #包括 int main(){ INTA; 标准:cin>>a; std::cout尝试删除未分配新的内存是未定义的行为。调用删除p时,p指向a,而a未分配新期间。此问题与cin完全无关cin被用来为a赋值的事实是不相关的。尝试删除未分配新的内存是未定义的行为。调用删除p时,p指向a,而a未分配e> 新的.Period。此问题与cin完全无关。使用cin为a赋值的事实是不相关的。p=&a;泄漏最初分配

在创建指针并使用
new
关键字分配内存之前,我正在尝试使用
cin
获取用户输入。该代码产生一个错误

#包括
int main(){
INTA;
标准:cin>>a;

std::cout尝试
删除
未分配
的内存是未定义的行为。调用
删除p
时,
p
指向
a
,而
a
未分配
期间。此问题与
cin
完全无关
cin
被用来为
a
赋值的事实是不相关的。

尝试
删除
未分配
的内存是未定义的行为。调用
删除p
时,
p
指向
a
,而
a
未分配
e> 新的
.Period。此问题与
cin
完全无关。使用
cin
a
赋值的事实是不相关的。

p=&a;
泄漏最初分配给
*p
删除p;
的值,然后
a
超出范围是双重删除。NNathan是对的。你需要交换
p=&a;
delete p;
,删除新的和删除的,或者用
*p=a;
替换
a
是一个自动变量。当它超出范围时,它会自动释放-但你需要它的地址(
p=&a
)和
delete
删除它。如果这样做有效,它将被删除两次:一次被你的
delete
删除,一次当它超出范围时。你也会忘记(泄漏)当您将
p
分配给其他对象时,您分配给
new
的内存。您应该如何释放分配给其他对象的内存?您不能。
p=&a;
泄漏最初分配给
*p
的值
delete p;
之后的
a
超出范围是双重删除。NothiNathan是对的。你需要交换
p=&a;
delete p;
,删除新的和删除的,或者用
*p=a;
替换
p=&a;
a
是一个自动变量。当它超出范围时,它会自动释放-但你要取它的地址(
p=&a
)和
delete
删除它。如果这样做有效,它将被删除两次:一次被你的
delete
删除,一次当它超出范围时。你也会忘记(泄漏)当您将
p
分配给其他对象时,您分配给
new
的内存。之后您应该如何释放分配的内存?您不能。非常感谢…这是我犯的一个错误..我正在开发一个更大的程序..工作正常..在使用new创建对象之前没有任何用户输入..当我尝试时获取输入..发生了相同的错误..当我尝试在创建对象的行之后获取输入..再次运行良好..因此尝试将问题的一个小模型带到程序中..这很好..当p=&a被删除..但在我处理的问题中..我无法找出输入缓冲区使用与对象冲突的原因craetion@KaviyaSubramanian真的帮不上忙,除非看到您遇到问题的实际代码,或者更好的代码来演示相同的问题。非常感谢…这是我犯的一个错误..我正在开发一个更大的程序..效果很好..当我在使用new创建对象之前没有任何用户输入..当我尝试获取输入..同样的错误发生了…当我尝试在创建对象的那一行之后获取输入时..再次运行良好..因此尝试将问题的一个小模型带到程序中..这运行良好..当p=&a被删除..但在我处理的问题中..我无法理解为什么输入缓冲区使用与对象冲突craetion@KaviyaSubramanian没有你真的帮不上忙我看不到您遇到问题的实际代码,也看不到演示相同问题的更好的代码。