Исходя из Java, я привык к встроенной структуре данных, на которую я могу быстро / легко ссылаться, что позволяет мне делать такие вещи, как добавление целых чисел в список и проверка, есть ли целое число в списке.
Поскольку это кажется распространенным явлением, я надеюсь увидеть, как проще всего это сделать в C ++ Builder. Я тоже могу использовать стандартную библиотеку C ++, если она будет работать с C ++ Builder.
Вы могли бы использовать std::vector
или же std::set
, использование vector
если вы хотите разрешить дублирование, используйте set, если вы этого не сделаете. ПОИСКИ vector
также будет значительно медленнее по сравнению с set
,
std::vector<int> intCheckList;
std::set<int> intCheckSet;
Предложение mattingly890 сработало для меня, это просто продолжение, чтобы привести пример того, как я использовал набор, как ссылку для других. Ниже приведен пример кода того, как я вставил в набор и проверил, было ли значение в наборе. Обязательно иметь #include <set>
на вершине.
// Test std set
std::set<int> myset;
std::set<int>::iterator it;
myset.insert(10);
myset.insert(20);
myset.insert(30);
it = myset.find(10);
boolean found = it!=myset.end();
if(found)
MessageDlg("Found 10", mtInformation, TMsgDlgButtons() << mbOK, 0);
it = myset.find(15);
found = it!=myset.end();
if(found)
MessageDlg("Found 15", mtInformation, TMsgDlgButtons() << mbOK, 0);
it = myset.find(20);
found = it!=myset.end();
if(found)
MessageDlg("Found 20", mtInformation, TMsgDlgButtons() << mbOK, 0);
Рекомендации: