我是一个新手程序员,目前正在使用 cpp 制作一个小型家庭数据库,但我无法从列表中删除一个家庭...
我的列表看起来像这样
start-of-family 1
jim
joe
bob
sam
end-of-family 1
start-of-family 2
rob
max
end-of-family 2
start-of-family 3
sue
tom
kim
end-of-family 3
如果我想删除家庭 1,我会找到家庭开始 1 和家庭结束 1。然后运行一个循环,但是如果用户只输入一个 int 来表示家庭编号,我该如何找到它.另外,我如何让后续的家庭号码减去 1,以便家庭 2 为 1,家庭 3 为 2。
非常感谢
最佳答案
如果我正在做这个问题,我会首先将每个家庭变成一个名字 vector 。然后,我将创建一个包含这些家庭 vector 的 vector 。
结果看起来像这样:
{
<(jim), (joe), (bob), (sam) >
<(rob), (max) >
<(sue), (tom), (kim) >
}
然后,如果用户想要删除其中一个家庭,您可以使用 vector.remove(n),其中 n 是要删除的家庭的索引。
这听起来像是学校或课本作业。你接触过 vector 了吗?这些名字是从哪里来的?您是否将它们硬编码到列表中?或者从 .txt 文件中读取它们?您现在将它们存储在哪种列表结构中?
关于c++ - fstream 删除特定的开始到结束行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50871127/