Вызов функции из другого файла .cpp

Я использую C ++ Builder и создаю приложение VCL Forms.

Вот мой код:

std::string returnStringFromUnicodeString(AnsiString str)
{
std::string s(str.c_str());
return s;
}

В настоящее время я имею это в файле main.cpp и могу использовать эту функцию из любых других функций в этом файле .cpp.

У меня такой вопрос: как я могу вызвать эту функцию из другой формы графического интерфейса? Я включил .h основного файла .cpp, но все еще не повезло.

Должен ли я сделать это публичным или каким-то другим способом?

Спасибо

1

Решение

Вам нужно объявить вашу функцию в заголовке, и вам нужно поместить реализацию в другой файл cpp, а не в него вместе с main, поэтому нет int main или void main и т. Д.

1

Другие решения

Возможно, вы захотите поместить эту вспомогательную функцию в отдельные файлы header и cpp, чтобы использовать ее в своем проекте.

1

Вам необходимо добавить:

std::string returnStringFromUnicodeString(AnsiString str);

в ваш файл main.h.

0

Другой способ — добавить прототип с extern в той форме, в которой вы хотите его использовать:

extern std::string returnStringFromUnicodeString(AnsiString str);

Но я думаю, что лучше использовать заголовки.

0
По вопросам рекламы [email protected]