博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三次作业中遇到的困难和解决方法
阅读量:5892 次
发布时间:2019-06-19

本文共 1372 字,大约阅读时间需要 4 分钟。

刚看到第三次作业时,首先映入眼帘的陌生词汇是类。心里不免一怔,毕竟还没接触过c++中的类,马不停蹄上慕课网看视频——c++远征封装篇。在视频中老师说明了类和对象的定义,视频看了一遍又一遍才大体知道类和对象的概念和使用。

继续看题目发现自己还未接触过queue的用法,通过百度知道了queue中如front、push、pop⋯⋯的用法以及建立queue。

在输入的方面,对于string的使用,我通过在慕课网学习,自己能够正确利用这个“利器”。

对于四则运算式子的分离,可发了难,通过询问,在表哥的点播下我试着将数字和符号分为两类,用set放所有符号,再对字符串逐个判断是否为符号,再string一个空字符串,对其clear,push。并逐步放进队列。

主要代码如下:

Scan.cpp

queue
Scan::ToStringQueue(string input){queue
strs; //建立队列 strsstring temp=""; //定义一个空字符串 tempfor (unsigned int i=0; i
10) //输入的字符串中的某个字符超过10位 { cout<
<<":超出10位"<
rs; //定义一个空队列 rs return rs; } if (charset.find(input[i])!= charset.end()) //字符串中的第i个字符不为四则运算中的符号 { if (temp!="") //字符串temp不为空 { strs.push(temp); //将字符串temp中的元素加入队列strs temp.clear(); //将字符串temp清空 } temp.push_back(input[i]); //在字符串temp尾部添加该字符 strs.push(temp); temp.clear(); //将字符串temp清空 } else { temp += input[i]; //将该字符拼接到 temp后 }}if (temp!="") //字符串temp不为空{ strs.push(temp); //将字符串temp中的字符加入队列strs temp.clear();}return strs;}Scan.h#include
#include
#include
using namespace std;class Scan{private:set
charset;public:Scan(void);~Scan(void);queue
ToStringQueue(string input);};

转载于:https://www.cnblogs.com/cjqcjq/p/5200326.html

你可能感兴趣的文章
mobile deeplearning
查看>>
Hadoop生态圈-Kafka的完全分布式部署
查看>>
《玩转Django2.0》读书笔记-探究视图
查看>>
SOCK_STREAM & SOCK_DGRAM
查看>>
css的border的solid
查看>>
div+css实现window xp桌面图标布局(至上而下从左往右)
查看>>
0-1 背包问题
查看>>
运行Maven是报错:No goals have been specified for this build
查看>>
Haskell 差点儿无痛苦上手指南
查看>>
[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1
查看>>
NTP 服务器配置
查看>>
jQuery自动完成点击html元素
查看>>
PHP环境搭建
查看>>
[算法]基于分区最近点算法的二维平面
查看>>
linux在文件打包和压缩
查看>>
Angular - - ngList、ngRepeat、ngModelOptions
查看>>
[LeetCode136]Single Number寻找一个数组里只出现一次的数
查看>>
webpack多页应用架构系列(七):开发环境、生产环境傻傻分不清楚?
查看>>
bootstrap - image
查看>>
spring-boot 和 webpack-dev-server联合开发
查看>>