用C++解析一个字符串

Mei*_*eir 1 c++ string parsing integer casting

我正在尝试为一个图形类创建一个构造函数,它接受一个字符串作为参数并使用它来构建图形.

字符串的格式如下:|vertex list|Edges list| 例如|1,2,3,4,15|(1->2),(3->2),(4->15)|

我们的想法是构造函数将从字符串中获取值,然后知道执行以下操作(将顶点插入顶点列表,然后将边插入边列表):

addVertex(1)  
addVertex(2)  
addVertex(3)  
addVertex(4)  
addVertex(15)  
addEdge(1,2)  
addEdge(3,2)  
addEdge(4,15)  
Run Code Online (Sandbox Code Playgroud)

我本来只是做了几个"for"循环来扫描字符串,但我不知道如何处理双(或更多)数字.我开始想象各种严重复杂的循环,我想知道是否有人可以与我分享任何更智能的方法来提取和使用这些数据.

McA*_*den 6

你似乎对整个事情感到不知所措.把它分解成碎片......任务.你想要做的似乎是这里的单独功能.

  1. 符号化
  2. 解析顶点
  3. 解析边缘
  4. 在顶点上执行
  5. 在边缘执行

这是5个功能或多或少.

您希望基于管道(|)进行标记化,因此请根据管道获取子字符串,并将每一侧传递给相应的解析器,解析逗号等等.

不会为你做,但希望我可以让你思考正确的方向.学习编程并不是关于任何特定语言,而是关于改变你的思维方式.