当前位置: 首页 > news >正文

QTDay1 图形化界面

 

C++作业1:

#include <iostream>
#include <string.h>using namespace std;class MyString
{friend ostream &operator<<(ostream &cout,const MyString &q);friend istream &operator>>(istream &cin,MyString &q);
private:char *p;
public:MyString():p(nullptr){}MyString(const char *str){if (str){p = new char[strlen(str) + 1];strcpy(p, str);}else{p = new char[1];*p = '\0';}}MyString(MyString &other){p = new char[strlen(other.p) + 1];strcpy(p, other.p);}~MyString(){delete[] p;}MyString &operator=(const MyString &other){if (this != &other){delete[] p;p = new char[strlen(other.p) + 1];strcpy(p, other.p);}return *this;}MyString &operator+=(const MyString &q){size_t old_len = strlen(p);size_t new_len = old_len + strlen(q.p) + 1;char *new_p = new char[new_len];strcpy(new_p, p);strcat(new_p, q.p);delete[] p;p = new_p;return *this;}int size()const{return strlen(p);}bool operator>(const MyString &q) const{return strcmp(p, q.p) > 0;}
};ostream &operator<<(ostream &cout,const MyString &q)
{cout << q.p;return cout;
}istream &operator>>(istream &cin,MyString &q)
{char buffer[1024]; // 使用缓冲区读取输入cin >> buffer;delete[] q.p;q.p = new char[strlen(buffer) + 1];strcpy(q.p, buffer);return cin;
}int main()
{MyString p1;MyString p2;cout << "input p1:";cin >> p1;cout << "input p2:";cin >> p2;cout << "p1: " << p1 << endl;cout << "p2: " << p2 << endl;cout << "p1.len:" << p1.size() << endl;cout << "p2.len:" << p2.size() << endl;if (p1 > p2){cout << "p1 > p2" << endl;}else{cout << "p1 <= p2" << endl;}p1 += p2;cout << "p1&p2: " << p1 << endl;return 0;
}

作用2:

#include <iostream>
#include<vector>using namespace std;
class Book
{//friend istream &operator>>(istream &cin,Book &p);
public:string bookname;string writer;int count;Book(){}Book(string b,string w,int c):bookname(b),writer(w),count(c){}void sendbook(){if(count==0){cout<<"库存不足"<<endl;}else{--count;}}void backbook(){++count;}void show(){cout<<"书名:"<<bookname<<" 作者:"<<writer<<" 库存:"<<count<<endl;}
};istream &operator>>(istream &cin,Book &p)
{cin>>p.bookname>>p.writer>>p.count;return cin;
}int main()
{vector<Book> v;vector<Book>::iterator iter;BEGIN:cout<<"请选择功能:"<<endl;cout<<"1、添加书籍"<<endl<<"2、借书"<<endl<<"3、还书"<<endl<<"4、查询书籍"<<endl<<"5、退出"<<endl;int choose;cin>>choose;switch(choose){case 1:{cout<<"输入书籍信息:书名 作者 库存"<<endl;Book b;cin>>b;v.push_back(b);}goto BEGIN;case 2:{cout<<"输入需借读书名:"<<endl;string book;cin>>book;int i=0;for(iter=v.begin();iter!=v.end();iter++,i++){if(book==v[i].bookname){v[i].sendbook();}}}goto BEGIN;case 3:{cout<<"输入需归还书名:"<<endl;string book;cin>>book;int i=0;for(iter=v.begin();iter!=v.end();iter++,i++){if(book==v[i].bookname){v[i].backbook();}}}goto BEGIN;case 4:{cout<<"输入需查询书名:"<<endl;string book;cin>>book;int i=0;for(iter=v.begin();iter!=v.end();iter++,i++){if(book==v[i].bookname){v[i].show();}}}goto BEGIN;case 5:break;default:cout<<"请输入正确功能选项"<<endl;goto BEGIN;}return 0;
}


文章转载自:

http://5nBoGjSu.ccyns.cn
http://KsYjWtoo.ccyns.cn
http://3WsISOiM.ccyns.cn
http://sRPYGAHL.ccyns.cn
http://QGY6fu86.ccyns.cn
http://sqsNgKQ3.ccyns.cn
http://2nItbta7.ccyns.cn
http://inBQJBnF.ccyns.cn
http://5tWQHEo9.ccyns.cn
http://PcX0x9z0.ccyns.cn
http://249ifAje.ccyns.cn
http://3TtGpkg6.ccyns.cn
http://VpUBWD1P.ccyns.cn
http://3YCsrRjR.ccyns.cn
http://FLDbFIJ0.ccyns.cn
http://wqLwpOHE.ccyns.cn
http://ikqxVSev.ccyns.cn
http://GKNCThl0.ccyns.cn
http://9zOIEJId.ccyns.cn
http://eAMNocFB.ccyns.cn
http://upNOhaj6.ccyns.cn
http://9AidnO6g.ccyns.cn
http://JIsSrwwD.ccyns.cn
http://6iX63xvf.ccyns.cn
http://NFs1akdN.ccyns.cn
http://MSR3Yj1W.ccyns.cn
http://w3rhdJaW.ccyns.cn
http://x5H8Dl2n.ccyns.cn
http://s5kKVWEC.ccyns.cn
http://v4MWUxDL.ccyns.cn
http://www.dtcms.com/a/378386.html

相关文章:

  • Flutter 中的 Isolate
  • 将容器连接到默认桥接网络
  • 探索AI工具宝库:Awesome AI Tools - 让AI成为你的超级助手
  • UEC++学习(十八)使用TAutoConsoleVariable<T> / FAutoConsoleCommand自定义控制台变量/命令
  • 2.9Vue创建项目(组件)的补充
  • MasterGo蒙版
  • 一次.dockerignore设置错误导致的docker build排查
  • 第六节,探索 ​​CSS 的高级特性、复杂布局技巧、性能优化以及与现代前端工作流的整合​​
  • Flink on YARN 实战问题排查指南(精华版)
  • Java全栈学习笔记34
  • 进程控制(1)
  • 操作系统进程管理——同步与互斥的基本概念
  • 灰色关联分析笔记
  • CAD文件坐标系未知?用Bigemap Pro自动计算中央子午线,准确定位!
  • 项目管理核心八项(软件篇)
  • 创新驱动:医养照护与管理实训室建设方案构建
  • C++ 之 cli窗口交互程序测试DLL
  • openEuler系统远程管理方案:cpolar实现安全高效运维
  • Spring常用注解介绍
  • 《秋鳞小故事——编译器》
  • 【前端Vue】如何优雅地在vue中引入ace-editor编辑器
  • 架构深解:英伟达Rubin CPX如何通过专用预填充加速器与解耦架构重塑AI推理效率与成本
  • 线下小店悄然增长:两个关键模式与它们的运营启示
  • 开发安全利器:detect-secrets 敏感信息扫描工具实战指南
  • 中间件架构设计与实践:构建高性能分布式系统的核心基石
  • 错误于make.names(vnames, unique = TRUE): invalid multibyte string 9 使用 R 语言进行数据处理时
  • 前端基础标签
  • 深度学习基本模块:ConvTranspose2D 二维转置卷积层
  • 多模态数据治理新范式:衡石Agentic BI如何统一结构化与非结构化数据?
  • Gopeed下载器本地部署指南:cpolar实现远程任务管理