LINUX.ORG.RU

Ответ на: комментарий от vertexua

Я говорил о синтаксисе QString(...) << 2 << 4 << «test» << myObj;

о! простите, там я этого не распарсил :)

shty ★★★★★
()
Ответ на: комментарий от shty

> скажу более, для людей которые равно не знаю ни про std::cout ни про printf, именно printf имеет куда более нечитаемый вид

Я с вами не согласен. Читабельность printf выше читабельности std::cout.

andreyu ★★★★★
()

[Срач]Что вы предпочитаете: C или C++

Название треда требуется читать так?

Demon37 ★★★★
()
Ответ на: комментарий от andreyu

> скажу более, для людей которые равно не знаю ни про std::cout ни про printf, именно printf имеет куда более нечитаемый вид

Я с вами не согласен. Читабельность printf выше читабельности std::cout.

это Ваше право соглашаться или нет, но у меня достаточно большая статистика на студентах :) хотя, надо сказать, что тем из них кто с мозгом, не сложно ни то ни другое

shty ★★★★★
()
Ответ на: комментарий от shty

>тем из них кто с мозгом

Человек с мозгом не будет конструячить говно навроде << blabla << std::setwidthheightfillmodifier(99) << ololo << std::setanothermodifier(11) << someClass << std::endl();

Всю эту погань в [говно]код обычно высирают ущербы с диагнозом «С++ головного мозга».

anonymous
()
Ответ на: комментарий от shty

Сдулся, толстячок? Вот тебе и урок на будущее - если в вопросе не разбираешся, то в умные темы не влезай.

anonymous
()
Ответ на: комментарий от shty

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

Reset ★★★★★
()
Ответ на: комментарий от shty

Студентам «понятнее» потому что опыта нет. Серьезное писать ничего им не приходилось и про нормальные альтернативы они не в курсе.

Reset ★★★★★
()
Ответ на: комментарий от anonymous

Сдулся, толстячок?

бггг :) да, один анонимный толстячок только что сдулся

shty ★★★★★
()
Ответ на: комментарий от Reset

> так в студию, или оно секретное?

так приводил уже

QString?

shty ★★★★★
()
Ответ на: комментарий от Reset

Я пользуюсь cout во всю. Просто немного не так как обычно.

#include <glibmm.h>

using namespace Glib;

...

int main(){
    ustring s = ustring::compose(format_string, i, j, k);

    std::cout << s << std::endl;
    return 0;
}

Там разделилили ustring::compose и ustring::format. Первая для параметризации

ustring::compose("%1%% done", percentage);

Вторая для форматирования

 ustring text = ustring::format(std::fixed, std::setprecision(2), value);

Таким образом строчки для локализации не содержат форматирования, только placeholders. Это удобно и годится для 99% случаев. А там где не годится уже можно написать уже любой другой код.

vertexua ★★★★★
()
Ответ на: комментарий от Reset

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

а что не так, std::wcout уже «зобанили»?

и таки да, с кроссплатформностью тут траблы есть, феерические программисты от Microsoft сделали wchar_t 2-байтным, в то время как под *nix'ами он 4-байтный, только тут потоки не при чём

тем не менее, если говорить про интернализацию, то если мне будет нужно действительно толстое и максимально кроссплатформенное решение я уж скорее буду использовать ICU, нежели тащить кучу мне не нужных вещей из Qt

и, кагбэ, в этом вопросе со мной согласны вот эти парни

Companies and Organizations using ICU

ABAS Software, Adobe, Amazon (Kindle), Amdocs, Apache Xalan XSLT, Apache Xerces XML, Appian, Apple, Argonne National Laboratory, Avaya, BAE Systems Geospatial eXploitation Products, BEA, BluePhoenix Solutions, BMC Software, Boost, BroadJump, Business Objects, caris, CERN, Debian Linux, Dell, Eclipse, eBay, EMC Corporation, ESRI, Free BSD, Gentoo Linux, Google, GroundWork Open Source, GTK+, Harman/Becker Automotive Systems GmbH, HP, Hyperion, IBM, Inktomi, Innodata Isogen, Informatica, Intel, Interlogics, IONA, IXOS, Jikes, Library of Congress, Mathworks, Mozilla, Netezza, OpenOffice, Lawson Software, Leica Geosystems GIS & Mapping LLC, Mandrake Linux, OCLC, Progress Software, Python, QNX, Rogue Wave, SAP, SIL, SPSS, Software AG, Sun Microsystems (Solaris, Java), SuSE, Sybase, Symantec, Teradata (NCR), Trend Micro, Virage, webMethods, Wine, WMS Gaming, XyEnterprise, Yahoo!, and many others.

shty ★★★★★
()
Ответ на: комментарий от shty

> и таки да, с кроссплатформностью тут траблы есть, феерические программисты от Microsoft сделали wchar_t 2-байтным, в то время как под *nix'ами он 4-байтный, только тут потоки не при чём

Glib::ustring

vertexua ★★★★★
()
Ответ на: комментарий от Reset

Студентам «понятнее» потому что опыта нет.

я про это и говорил :) и сей факт доказывает что использование потоков повышает читабельность

а по задрочке - это можно и на брейнфаке писать код

Серьезное писать ничего им не приходилось и про нормальные альтернативы они не в курсе.

ну Вы это, за всех то отучайтесь говорить :) один студент вон в гугль устроился, там лузеров не берут :)

shty ★★★★★
()
Ответ на: комментарий от shty

> я уж скорее буду использовать ICU, нежели тащить кучу мне не нужных вещей из Qt

ICU тоже немаленькая, я пользуюсь UTF8-CPP - четыре небольших .h файла, и зная, что в win wchar_t это UTF16, а в ...nix - UTF32, можно быстро и удобно перегонять строки

lester ★★★★
()
Ответ на: комментарий от vertexua

> и таки да, с кроссплатформностью тут траблы есть, феерические программисты от Microsoft сделали wchar_t 2-байтным, в то время как под *nix'ами он 4-байтный, только тут потоки не при чём

Glib::ustring

так да, но не всегда его удобно тянуть за собой :)

PS а за 2 байта (читай убийство кроссплатформенности) wchar_t я бы морду кое кому набил бэ (в том числе и писателям стандарта), притом циничная тупость в том что для японского языка используются 3-байтные кодировки

shty ★★★★★
()
Ответ на: комментарий от shty

> притом циничная тупость в том что для японского языка используются 3-байтные кодировки

японский язык не нужен ^_^

lester ★★★★
()
Ответ на: комментарий от lester

> я уж скорее буду использовать ICU, нежели тащить кучу мне не нужных вещей из Qt

ICU тоже немаленькая

есть такое, но всё равно оно меньше Qt :)

я пользуюсь UTF8-CPP - четыре небольших .h файла

UTF8 - тоже ведь 2 байта, не всегда хватает

зная, что в win wchar_t это UTF16, а в ...nix - UTF32, можно быстро и удобно перегонять строки

это - да, а вот для их хранения приходиться использовать костыли

shty ★★★★★
()
Ответ на: комментарий от lester

> притом циничная тупость в том что для японского языка используются 3-байтные кодировки

японский язык не нужен ^_^

станет не нужен когда носителей не будет, а пока, увы, приходится

shty ★★★★★
()
Ответ на: комментарий от shty

> один студент вон в гугль устроился, там лузеров не берут :)

на подхвате у профессионалов кто там только не работает, поэтому это не показатель

Reset ★★★★★
()
Ответ на: комментарий от shty

> UTF8 - тоже ведь 2 байта, не всегда хватает

т.е.? хранится все как char*

это - да, а вот для их хранения приходиться использовать костыли


почему? как я и написал - обычный char-массив, он кстати так и в fopen в линуксе отдается, например

lester ★★★★
()
Ответ на: комментарий от Reset

> один студент вон в гугль устроился, там лузеров не берут :)

на подхвате у профессионалов кто там только не работает

профессионалы (в гугле точно) на подхват абы кого не берут

shty ★★★★★
()
Ответ на: комментарий от lester

> UTF8 - тоже ведь 2 байта, не всегда хватает

т.е.? хранится все как char*

иногда нужно больше 2-х байт

понятно что можно всё замутить через char*, открыть unicode.org посмотреть стандарт и сделать, но не всегда на это есть время/хочется с этим возиться

PS особо руки мелкомягким бы поотрывать за японскую Shift-JS, вот уж что можно вместо судоку использовать

shty ★★★★★
()
Ответ на: комментарий от Reset

ты от темы не уходи, лучше расскажи как будешь переводить свою лапшу из закорючек и стрелочек

Вы меня явно с кем то путаете, наверное с собой :) у меня лапши не бывает

shty ★★★★★
()
Ответ на: комментарий от Reset

ты от темы не уходи

и да, чья бы корова мычала :)

shty ★★★★★
()
Ответ на: комментарий от shty

UTF8 - тоже ведь 2 байта, не всегда хватает

UTF-8 (от англ. Unicode Transformation Format — формат преобразования Юникода) — в настоящее время распространённая кодировка, реализующая представление Юникода, совместимое с 8-битным кодированием текста. Нашла широкое применение в операционных системах и веб-пространстве.

Текст, состоящий только из символов Юникода с номером меньше 128, при записи в UTF-8 превращается в обычный текст ASCII. И наоборот, в тексте UTF-8 любой байт со значением меньше 128 изображает символ ASCII с тем же кодом. Остальные символы Юникода изображаются последовательностями длиной от 2 до 6 байт (реально только до 4 байт, поскольку использование кодов больше 221 не планируется), в которых первый байт всегда имеет вид 11xxxxxx, а остальные — 10xxxxxx.

Вики

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

каким образом ? вот есть такая %уета

std::cout << "blah blah A[" << std::setw(4) << i << "] blah blah = " << std::setw(23) << std::setprecision(16) << A[i] << " blah blah " << std::endl;

её надо перевести. Опишите порядок действий.

Reset ★★★★★
()
Ответ на: комментарий от lester

> иногда нужно больше 2-х байт

так UTF8 же вроде до 6 байт на символ может иметь?

эм, надо будет посмотреть, есть мнение что Вы тут правы (может я и туплю), надо освежить знания

shty ★★★★★
()
Ответ на: комментарий от shty

> я уж скорее буду использовать ICU, нежели тащить кучу мне не нужных вещей из Qt

для локализации из Qt нужен только QtCore

annulen ★★★★★
()
Ответ на: комментарий от JackyTreehorn

ты кретин, или долбоеб? спросили про принципиальную возможность - я ответил как можно, и написал сразу, что это бред, хотя такие долбоебы как ты видно читать два сообщения за раз не умеют

lester ★★★★
()
Ответ на: комментарий от shty

>всего лишь QtCore, да?

либа весит меньше 3 мб. это не аргумент?

если совсем жмот или пишешь хеллоуворлд, слинкуй статически, все не нужное будет выброшено линкером

annulen ★★★★★
()
Ответ на: комментарий от annulen

либа весит меньше 3 мб. это не аргумент?

дело не в этом, а в том что когда ты пишешь либу, которая весит 100 Кб (это, например, размер szlib), то прилагать к ней до кучи довесок всего-то в 3 Мб как минимум несерьёзно

если совсем жмот или пишешь хеллоуворлд, слинкуй статически, все не нужное будет выброшено линкером

лицензия не велит (вроде?)

shty ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.