Как сделать состояние приложения с C ++ и Flutter (FFI)C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как сделать состояние приложения с C ++ и Flutter (FFI)

Сообщение Anonymous »

Я пытаюсь выучить C ++, создавая приложение, используя c ++ для бэкэнда (я хочу иметь все данные и логику здесь), Flutter для фронта (пользовательский интерфейс подключен к C ++ Backend через ffi (так что я могу называть функции C ++ для выполнения вещей и получения данных) ard> devices> ard> и и ard>. Macro Pad, Numeric Pad, клавиатуры, Ecc., Созданная с помощью переключателей клавиатуры, кодеров, отображения, ECC.), которые общаются с C ++ Backend через Serial (я использую serial.h).
Бэкэнд должен позаботиться о профилях (различный слой ремеспок), перенастройка и выполнение команды (давление на давление, выполнение макроса, ECC. > Файл. < /p>
Проблема заключается в том, что онлайн многие говорят, что не используют глобальное состояние в целом или синглтоне, но я не знаю, как управлять этим состоянием, глобальное состояние (возможно, синглтон) было бы удобным, так как я мог бы получить доступ к данным из любой функции без необходимости передачи ссылки на экземпляры, если я назову функцию, я буду выполнять ссылку на функцию. Вызов.

Код: Выделить всё

extern "C" __declspec(dllexport) int startBackend() {
std::vector devices; // This should be in the state

std::cout 
В Flutter я сначала называю Startbackend: < /p>
void main() {
int backendError = runBackend(); // TODO: fix error handling

runApp(const MyApp());
}

class MyApp extends StatelessWidget {
const MyApp({super.key});

@override
Widget build(BuildContext context) {
return FluentApp(
title: 'Windows UI for Flutter', // TODO: change name
theme: lightMode,
debugShowCheckedModeBanner: false,
home: const MainPage(),
);
}
}
Теперь у меня есть устройства (список устройств) в Startbackend, но этот способ будет удален до того, как приложение даже запустится (пользовательский интерфейс), я должен сделать поток, которая работает с состоянием и каким -то образом получить к нему доступ (возможно, с помощью ссылки, проходящей через функции), синглетон или глобальный класс/конструкция или еще один, а не все, что есть и другие способы, а не в каких -либо лучших, а не в том, что и другие, а не в каких -либо больших способах (и Pretrage, а не в том, что и другие - и есть и другие способы, а не в том, что еще больше, и есть и другие способы (и p>
, а не в более высоком уровне? Библиотека пользовательского интерфейса, которую я видел), но FFI немного странно и сложна для меня.

Подробнее здесь: https://stackoverflow.com/questions/797 ... lutter-ffi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»