Не отображает текст. Ошибка сегментирования.

SFML и C++ Уроки \ Разработка игр Форумы SFML Graphics Не отображает текст. Ошибка сегментирования.

В этой теме 3 ответа, 2 участника, последнее обновление  ReRand0m 8 года/лет, 6 мес. назад.

Просмотр 4 сообщений - с 1 по 4 (из 4 всего)
  • Автор
    Сообщения
  • #1663

    ReRand0m
    Участник
    Сообщений:3

    Зарегистрирован:
    04.08.2015

    Репутация:5

    Ничего не понимаю, в общем вот код:

    Конструктор:

    addText:

    update:

    Последняя строка в update выдаёт ошибку. Но, если addText вызвать в update то всё нормально, за исключением миллиона текстов))

    #1755
    +1
    MicroSDA
    MicroSDA
    Участник
    Сообщений:64

    Зарегистрирован:
    24.04.2015

    Репутация:22

    Я так подозреваю что вы использовали std::vector<type>. Текст который создается в addText он локален для этого метода то – есть не виден ни самому классу ни его методам. Я не знаю что происходит в таком случае тем более метод вызван в конструкторе самого класса. У текста отсутствует позиция на экране.

    #1756
    MicroSDA
    MicroSDA
    Участник
    Сообщений:64

    Зарегистрирован:
    24.04.2015

    Репутация:22

    Если у вас в коде конструктора такие отступы а вернее их отсутствие может и вызвать такую ошибку потому что :
    if(!font.loadFromFile(“textures/arial.ttf”))
    std::cout << “error in file ” << __FILE__ << ” on line ” << __LINE__ << std::endl;
    addText();
    Здесь метод addText стоит на else. Может в этом проблема.

    #1757
    +1

    ReRand0m
    Участник
    Сообщений:3

    Зарегистрирован:
    04.08.2015

    Репутация:5

    Проблема решилась, когда

    вынес за пределы конструктора.

    Теперь в update() один раз вызывается:

    Решение не самое лучшее, может кто знает более лаконичное?

Просмотр 4 сообщений - с 1 по 4 (из 4 всего)

Для ответа в этой теме необходимо авторизоваться.