Я использую C ++ Builder и создаю приложение VCL Forms.
Вот мой код:
std::string returnStringFromUnicodeString(AnsiString str)
{
std::string s(str.c_str());
return s;
}
В настоящее время я имею это в файле main.cpp и могу использовать эту функцию из любых других функций в этом файле .cpp.
У меня такой вопрос: как я могу вызвать эту функцию из другой формы графического интерфейса? Я включил .h основного файла .cpp, но все еще не повезло.
Должен ли я сделать это публичным или каким-то другим способом?
Спасибо
Вам нужно объявить вашу функцию в заголовке, и вам нужно поместить реализацию в другой файл cpp, а не в него вместе с main, поэтому нет int main или void main и т. Д.
Возможно, вы захотите поместить эту вспомогательную функцию в отдельные файлы header и cpp, чтобы использовать ее в своем проекте.
Вам необходимо добавить:
std::string returnStringFromUnicodeString(AnsiString str);
в ваш файл main.h.
Другой способ — добавить прототип с extern в той форме, в которой вы хотите его использовать:
extern std::string returnStringFromUnicodeString(AnsiString str);
Но я думаю, что лучше использовать заголовки.