如何限制用户在C ++程序中输入冗余数据?

时间:2012-02-28 09:30:11

标签: c++

我正在编写一个程序来阅读一些学生记录。

输入的数据应该是唯一的。

我该怎么做?

2 个答案:

答案 0 :(得分:0)

你可以使用std :: map with key - >您的学生班级的主键,价值实例,但要善用某种能够为您处理它的数据库。

答案 1 :(得分:0)

以下是否有任何好处?:

bool appendUserRecord( int input, std::vector<int>& records )
{
    for ( std::vector<int>::iterator _it = records.begin(); 
                                     _it < records.end(); ++_it )
    {
        if ( *_it == input )
            return false;
    }
    records.push_back( input );
    return true;
}

当添加唯一的“记录”时,此函数将返回true,否则返回false(如果已存在)。使用记录类/结构而不是整数来实现它只需要很小的修改。

至于将数据存储在文件中,您只需打开文件流并使用for循环以序列化形式将所有记录传递给它。使用while循环(而不是文件末尾)来检索数据。