Форум программистов, компьютерный форум CyberForum.ru

Необходимо протестировать костыль. Конвертирование Glib::ustring в sf::String - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Динамическая списочная структура, содержащая объекты классов, связанных наследованием http://www.cyberforum.ru/cpp/thread1564885.html
В общем. Есть базовый класс и 2 класса наследника. Нужно создать динамическую структуру(пусть это будет односвязный список) в который можно добавлять или удалять объекты любого из 3-х классов. Я сделал односвязный список в который можно добавлять базовый класс. Но вот как реализовать возможность хранения в одном списке различных классов? #include <stdio.h> #include <iostream> #include...
C++ WinAPI Реализовать взаимодействие между процессами с помощью сигналов Программная Реализация Между процессами с помощью сигналов на языке С\С++ http://www.cyberforum.ru/cpp/thread1563515.html
Как найти расстояние между 2 линиями (OpenCV)? C++
Доброго времени Суток! у меня следующий вопрос. я с камеры получаю картинку с помщью OPENCV, и с помощью функций Canny и ROI получаю следующий результат. как можно, или можно ли вообще расчитать расстояние(pixel) между двумя краями(Линиями)? буду очень признателен за помощь
C++ Протестируйте функцию сортировки контейнера
У set контейнера странная сортировка, решил написать функцию которая увеличивала на одну единицу значение вектора. Вектор выступает как "виртуальное целое число". Так как стандартный обход char от 0 до -128 и увеличить переменную со значением -128 приведет что переменная будет равна 0. А сортировка у set контейнера от -128 до 127. Вопрос правильно ли работает моя функция. Я просто не знаю как...
C++ Поиск фигуры на картинке http://www.cyberforum.ru/cpp/thread1563162.html
Суть задания: В окне программы рисуется фигура (треугольник или прямоугольник). При нажатии на кнопку "Go", в верхнем левом углу окна программы появляется объект (допустим в виде квдратика) у которого есть направление сканирования (хз как это еще описать). Он должен: 1. Найти фигуру (которую мы нарисовали в начале). 2. Приблизится впритык к фигуре. 3. Полностью обойти фигуру. 4. Выдать...
C++ Ссылка для скачивания visual studio 2010 professional В интернете постоянно, когда скачиваю visual studio 2010 professional rus выходит при установке образ жесткого диска, но так никогда не было когда скачивала раньше. Старая установка исчезла из-за переустановки винды. Может кто-нибудь поможет мне, скинет ссылку для скачивания нормальной visual studio 2010 professional rus x64bit. мне именно нужна 2010..а не новые 2013, 2015г подробнее

Показать сообщение отдельно
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12520 / 7082 / 797
Регистрация: 27.09.2012
Сообщений: 17,489
Записей в блоге: 2
Завершенные тесты: 1
29.10.2015, 02:32  [ТС]     Необходимо протестировать костыль. Конвертирование Glib::ustring в sf::String
Еще такой вариант у меня работает:
C++
1
sf::String s( sf::String::fromUtf32(u_str.begin(),u_str.end()) ) ;//Или fromUtf16. Варианты очень хреновые
Добавлено через 43 минуты
Сделал так, если кому будет интересно:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
namespace
{
    class ucs4_string_wrapper
    {
    public:
        ucs4_string_wrapper (const Glib::ustring & source_string)
            : m_data (nullptr)
            , m_wc(0)
        {
            m_data = g_utf8_to_ucs4_fast(source_string.data(), source_string.bytes(), &m_wc) ;
        }
        ~ucs4_string_wrapper()
        {
            g_free(m_data) ;
        }
        const gunichar * data() const
        {
            return m_data ;
        }
    private:
        ucs4_string_wrapper (const ucs4_string_wrapper&) = delete ;
        ucs4_string_wrapper & operator=(const ucs4_string_wrapper&) = delete ;
        gunichar * m_data ;
        glong m_wc ;
    };
}
 
 
namespace sfml_tools
{
    sf::String convert_from_ustring (const Glib::ustring& source_string)
    {
        ucs4_string_wrapper usc4_str (source_string) ;
        return sf::String ( static_cast<const sf::Uint32*>(usc4_str.data()) ) ;
    }
}
 
//...
 
sf::String s(convert_from_ustring(u_str)) ;
 
Текущее время: 01:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru