Как загрузить данные не в реальном времени в Firebase?

Компилятор будет генерировать код для каждого экземпляра шаблона при использовании шаблона во время этапа компиляции. В процессе компиляции и компоновки файлы .cpp преобразуются в чистый объектный или машинный код, который в них содержит ссылки или неопределенные символы, поскольку файлы .h, которые включены в ваш main.cpp, не имеют реализации YET. Они готовы быть связаны с другим объектным файлом, который определяет реализацию для вашего шаблона, и, следовательно, у вас есть полный исполняемый файл a.out. Однако, поскольку шаблоны необходимо обрабатывать на этапе компиляции, чтобы сгенерировать код для каждого экземпляра шаблона, который вы делаете в своей основной программе, ссылка не поможет, поскольку компиляция main.cpp в main.o и компиляция вашего шаблона .cpp в template.o, а затем ссылка не будет достигать цели шаблонов, потому что я связываю различные экземпляры шаблонов с одной и той же реализацией шаблона! И шаблоны должны делать обратное, т. Е. Иметь одну реализацию, но допускать много доступных экземпляров посредством использования одного класса.

Значение typename T get заменяется во время этапа компиляции, а не на этапе связывания, поэтому, если я попытаюсь для компиляции шаблона без замены T в качестве конкретного типа значения, чтобы он не работал, потому что это определение шаблонов - это процесс времени компиляции, а мета-программирование btw - все об использовании этого определения.

1
задан jo1995 16 January 2019 в 12:20
поделиться

1 ответ

Существует observe, который постоянно уведомляет каждый раз, когда происходит обновление в базе данных. И есть observeSingleEvent, который будет предоставлять вам данные только по запросу.

https://firebase.google.com/docs/database/ios/read-and-write

А также, ваша ссылка на Geofire будет уведомлять вас о каждом обновлении, если вы не хотите, чтобы это делалось, удалите его следующим образом:

«Если вы не заинтересованы в получении обновлений для новых / перемещающихся пользователей после первоначального запроса, это также отличный момент для удаления ваш наблюдатель, позвонив по removeObserverWithFirebaseHandle или removeAllObservers. "

в вашем случае это сообщения, и это было упомянуто здесь: https://stackoverflow.com/a/50722984/8869493

0
ответ дан Gustavo Vollbrecht 16 January 2019 в 12:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: