程序在 cin >>后无响应
Program unresponsive after cin >>
我正在测试运算符重载,它似乎被重载的">>"运算符挂断了。我输入了数字并点击回车键,然后光标就停在下一行向我眨眼
main.cpp
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
#include "OpTesting.h"
int main() {
Testing tObject(8);
Testing tObject2;
cout<<"nEnter 7 numbers" <<endl;
cout<<":: ";
cin>>tObject;
cout<<"nFirst object contents: ";
cout<<tObject;
cout<<"nAssigning contents of first object to second object" <<endl;
tObject = tObject2;
cout<<"nContents of second object: ";
cout<<tObject2;
return 0;
}
函数定义
Testing::Testing(int arraySize) : length(arraySize) {
cout<<"Object initialized" <<endl;
ptr = new int[length];
for(int x = 0; x < length; x++) {
ptr[x] = 0;
}
}
Testing::Testing(const Testing &toBeCopied) {
for(int x = 0; x < length; x++) {
ptr[x] = toBeCopied.ptr[x];
}
}
Testing::~Testing() {
delete[] ptr;
}
const Testing &Testing::operator=(const Testing &toBeAssigned) {
for(int x = 0; x < length; x++) {
ptr[x] = toBeAssigned.ptr[x];
}
return toBeAssigned;
}
ostream &operator<<(ostream &output, const Testing &data) {
for(int x = 0; x < data.length; x++) {
output <<data.ptr[x];
if(x == data.length) {
cout<<endl;
}
}
return output;
}
istream &operator>>(istream &input, Testing &data) {
for(int x = 0; x < data.length; x++) {
input >> data.ptr[x];
}
return input;
}
我试着在这个网站上搜索解决方案,但没有一个答案对我有效。
Testing tObject(8);
...
cout<<"nEnter 7 numbers" <<endl;
cout<<":: ";
cin>>tObject;
这似乎会试图解析8个数字,而不是7个。你试着输入8个数字了吗?
同样关于"我输入数字并点击回车",用空格分隔单个数字和回车将是相同的,这可能会令人困惑。
此外,此条件语句将永远不会运行,x
最多为data.length - 1
:
if(x == data.length) {
cout<<endl;
}
此外,复制构造函数没有正确设置length
和ptr
,而operator=
也没有,应该是return *this
。。。
Testing tObject(8);
cout<<"nEnter 7 numbers" <<endl;
cin>>tObject;
创建长度为8的tObject
,然后提示输入7个数字。我猜你输入了7个数字,所以它正在等待第8个数字。。。
相关文章:
- EASTL矢量<向量<int>>连续的
- 当服务中的事件被触发时,如何将响应从服务发送回客户端?
- C++ 信号和插槽不工作:插槽不响应事件
- NodeJs 服务器充斥着 UDP 广播,不发送响应
- C++关于ENUM的问题。我得到的响应比枚举列表大
- 应用程序在打开的简历中捕获视频后没有响应
- 使用 cpprest (Casablanca) 返回 PDF 响应
- 为什么当通过 TCP 发送的消息速率增加时,请求-响应消息对的延迟会降低?
- 如何使用从处理程序调度的最终回调将响应异步返回给调用方on_read?
- 获取加密的正文响应WinHttp HTTPS
- QtConcurrent - 在发布到 UI 线程的数千个结果中保持 GUI 响应
- 同步读取多个 TCP 响应
- HTTP 响应格式不正确?
- 如何使用软化工具包从 OPC UA 服务器异步读取操作回调中的数据值响应中获取 NodeId 详细信息
- HTTP帖子,无需等待响应
- 问题导致程序停止响应,并且姓氏未正确打印
- AT 命令响应解析器
- 将静态 IP 分配给我的 ESP32 服务器后不再响应
- 用于C++的 TCP/IP 解析器和响应器
- 我会导致太多内存泄漏,以至于我的计算机无响应吗?