Вопрос

Итак, я выполнил указанные здесь шаги: http://zxing.googlecode.com / svn / trunk / iphone / README

И я убедился, что все в порядке, но мой QRCodeReader не распознается в файле myVC.mm.

Вот какова ситуация: Проект помещен в мой собственный проект, как описано по ссылке. Я импортировал код #import "ZXingWidgetController.h" в файл заголовка, и он распознается. Я импортировал код #import "QRCodeReader.h" в файл реализации (.mm) Затем я назначил их обоим целевым методом такой кнопки:

родовое слово

Теперь он говорит мне, что проблема:

родовое слово

Здесь написано: Use of undeclared identifier 'QRCodeReader'

  • Почему мой импорт QRCodeReader не отображается в кажущемся .mm файл?
  • Что я забыл, чего нет в описании, которое я использовал?
  • И самое главное, как мне исправить это, чтобы распознать QRCodeReader?
Это было полезно?

Решение

Обычный код C ++ (не Objective C ++) использует пространства имен C ++.

Вам нужно либо сказать zxing::qrcode::QRCodeReader, либо использовать операторы using, например

родовое слово

Обновление :

В приведенном выше коде присутствует класс C ++, но на самом деле существует класс виджетов с тем же именем, о котором я забыл.Это класс Objective C, который является оболочкой для класса C ++, и это то, что вам нужно.Вместо приведенного выше кода просто сгенерируйте код ... как вы сказали, что сделали.Я ожидаю, что два файла с одинаковым именем сталкиваются.Вы установили опцию «рекурсивный» при включении файлов cpp?README говорит «не нужно», но, вероятно, должен сказать «не должен».Это могло привести к включению файла cpp, а не версии виджета.

Другие советы

У меня была точно такая же проблема в конце концов, решение было довольно простым.

Я поместил файл .mm с «Местоположение» -> «Относительно проекта».

Надеюсь на эту помощь

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top