Я пытаюсь создать простую программу базы данных, которая дает пользователям возможность добавлять, удалять и редактировать строковые переменные.C++ if (Array [x] .length> 0)
Проблема, с которой я столкнулся: Назначение каждой добавленной переменной следующему элементу пустого массива.
-Им пользуюсь статическими массивами, пока я не узнаю больше о динамических массивах.
-Поскольку это вне контекста, я воссоздал здесь код, чтобы иметь больше смысла, извините, если я пропустил что-нибудь.
//static array declaration
std::string names[5];
//string selection from main function
std::string stringSel = "Item";
//boolean condition for loop
bool completed = false;
//if (names[x].length > 0) then increment x by 1 until names[x].length == 0 and then set that array element to the value from stringSel
int x = 0
while(completed == false)
{
//if the length of the element is greater than zero characters, increment the element
if (names[x].length > 0)
{
x++;
}
//if the length of the element is not greater than zero characters, set the string to that element
else
{
//The empty element is assigned the string and the entire array prints out
names[x] = stringSel;
std::cout << stringSel << " was added to the database.\nThis is the printout of all current items: " << names;
completed = true;
}
}
Ошибка, которую я получаю, исходит из моего условия if-statements. «.» Подчеркивается красный
1 IntelliSense: указатель на связанную функцию можно использовать только для вызова функции
Спасибо, что решил, что легко и имеет смысл. Итак, std класс, строка объекта и длина члена? Недавно я узнал, как работают классы и объекты. –
@Bijan Kelley Добро пожаловать. 'std' - это пространство имен, к которому принадлежит класс' string', и 'length()' является функцией-членом класса 'string'. Объект класса 'string' в этом случае - это то, что' names [x] 'выполняется с момента создания массива типа' std :: string names [5]; '. –
Благодарим вас за освобождение! Просто узнал об пространствах имен на прошлой неделе, так что, похоже, мы убили двух птиц одним выстрелом. –