Информация об изменениях

Сообщение Re[8]: Приложения под Windows все еще продаются? от 28.02.2019 12:30

Изменено 28.02.2019 12:32 drVanо

Re[8]: Приложения под Windows все еще продаются?
Здравствуйте, AlexGin, Вы писали:

V>>Qt нужно только в GUI версии (ессно с использованием Qt-ных строк). Само ядро, с которым работает GUI и консольная версии, написано на std::string.


AG>Qt, поддерживаемое Qt Company, это ведь как раз и есть общий знаменатель зачем же в ядре уходить от него?

AG>Вы, уважаемый drVanо, как я понял, предлагаете делать ядро на чистом STL? Верно?

Для того чтобы выкопать ямку глубиной 30 см совершенно необязательно покупать экскаватор Набор лопат из STL соседнего хозяйственного магазина хватит на многие годы вперед.

AG>Или только с поддержкой стандартных строк (где всё не просто с Unicode)?


У вас сложилось неправильное представление, что у нас "всё не просто с Unicode". Скорее наоборот — все очень просто, если изначально отказаться от использования std::wstring (к слову сказать для компиляторов под OSX/Linux wchar_t имеет размер 4 байта и не имеет ничего общего с wstring под Windows) и использовать только std::string. В нашем случае преобразования UTF8 в UTF-16 нужны только при вызовах виндовых API, поэтому в качестве стандартного контейнера под хранения строк был выбран std::string, а платформозависимый слой был вынесен в отдельный набор API, где уже делаются (или не делают) необходимые пребразования.

AG>Я поясню мою мысль подробнее:

AG>Qt — он и в Африке Linux есть Qt.
AG>В то же время, версия STL редакции MSVC, хоть незначительно, но отличается от версии gcc/g++

На стандартных классах мы такого не замечали.
Re[8]: Приложения под Windows все еще продаются?
Здравствуйте, AlexGin, Вы писали:

V>>Qt нужно только в GUI версии (ессно с использованием Qt-ных строк). Само ядро, с которым работает GUI и консольная версии, написано на std::string.


AG>Qt, поддерживаемое Qt Company, это ведь как раз и есть общий знаменатель зачем же в ядре уходить от него?

AG>Вы, уважаемый drVanо, как я понял, предлагаете делать ядро на чистом STL? Верно?

Для того чтобы выкопать ямку глубиной 30 см совершенно необязательно покупать экскаватор Набора лопат из STL соседнего хозяйственного магазина хватит на многие годы вперед.

AG>Или только с поддержкой стандартных строк (где всё не просто с Unicode)?


У вас сложилось неправильное представление, что у нас "всё не просто с Unicode". Скорее наоборот — все очень просто, если изначально отказаться от использования std::wstring (к слову сказать для компиляторов под OSX/Linux wchar_t имеет размер 4 байта и не имеет ничего общего с wstring под Windows) и использовать только std::string. В нашем случае преобразования UTF8 в UTF-16 нужны только при вызовах виндовых API, поэтому в качестве стандартного контейнера под хранения строк был выбран std::string, а платформозависимый слой был вынесен в отдельный набор API, где уже делаются (или не делаются) необходимые пребразования.

AG>Я поясню мою мысль подробнее:

AG>Qt — он и в Африке Linux есть Qt.
AG>В то же время, версия STL редакции MSVC, хоть незначительно, но отличается от версии gcc/g++

На стандартных классах мы такого не замечали.