Здравствуйте, x-code, Вы писали:
XC>Ну вот в C# вроде нормальная модульная система. Раздельная компиляция, но никаких include,
Ну да, include нет, есть using.
Здравствуйте, Mamut, Вы писали:
AVL>>массовым погромистам гораздо проще развешивать лапшу прикрываясь всякими С# 100500 / мета- / фукнциональное программирование / лямбды / монады / linq / макросы / прочая фигня. а да, виртуальные машины забыл, тоже модная тема. M>Выделенное — не лапша, а очень удобные инструменты. Которые — ВНЕЗАПНО — тоже появляются в С++
странно было бы, если бы человек, покусанный яблочным маркетингом, не утверждал, что вся это модная лапша не является удобной
расскажи что там внезапно появилось в плюсах (можно без лямбд, хотя кому они нужны там...), что тебя на капс пробило.
S>#ifndef aaa
S>#define aaa
S>// пишем, не имея проблем с циклическими инклудами. Любая иде так делает сразу.
S>#endif aaa
S>
Любую программу можно написать на ассемблере. Но надо ли это делать?
Красота языка определяется отсутствием таких вот обходных путей (а это именно обходной путь!). Да, в данном случае обойти просто... но это в данном случае, вполне могут быть случаи и посложнее. Мне нужен язык, в котором вообще ничего не нужно обходить.
Здравствуйте, x-code, Вы писали:
XC>Я хочу, чтобы строка в кавычках была просто объектом. Чтобы не было даже привязки к кодировке (utf16, utf8, windows...), к внутреннему устройству и т.д.
Добро пожаловать в реальный мир.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, x-code, Вы писали:
BBI>>Красота побоку. Главное чтоб задачи решил как надо. Существующая система include мне ещё ни разу не мешала, и showstopperом не была. XC>Циклические include всякие.
Это лечится. Впрочем, циклических я давненько не видел.
XC>>>Все должно быть полноценными объектами, и числа, и строки. То есть должны быть вызовы вида 10.ToStr(), "Hello".ToUpper(), но при этом эти "объекты" должны оставаться простыми сущностями. BBI>>Получится жуткий кадавр. XC>При наличии методов-расширений все получится вообще элементарно. string ToStr(this int x) и т.д.
А чем не нравится конструктор string (int x)?
BBI>>Мы пишем системные вещи но goto только в plain С наблюдается, в основном потому что там RAII нету. XC>В каком-нибудь ядре Linux наверняка немало goto. А оно написано на древнем Си.
Вот вот. А С++ то при чём. Использовать goto в современном c++ нет никакой необходимости.
XC>Простейший пример — если в функцию можно передать строку как адрес массива char*, то почему нельзя передать явный массив любых других объектов?
Объяви рядом да передай. Со строками это явный частный случай, бо частота использования зашкаливала.
XC>Или еще: если в классе можно объявить функцию (метод) и другой (вложенный) класс, в функции можно объявить вложенный класс, то почему в функции нельзя объявить вложенную функцию?
Я честно говоря уже не помню какое там было обоснование почему так не стали делать.
XC>>>Да пусть у меня всего 4 метода в классе, но я хочу разделить их в две группы, что не имею права? BBI>>А как ты их потом будешь вызывать? Указывая namespace каждый раз? Сделаешь using namespace? Ну так а нахрена их тогда было разделять? XC>Чтобы сгруппировать логически.
Это лучше сделать на стороне гуя.
XC>Вызывать — в основном, указывая namespace как часть имени каждый раз. Внутри namespace естественно не указываем.
Этож жутко неудобно.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, TimurSPB, Вы писали:
BBI>>То что мне вспоминается про тебя и пробелы и табы — исключительно "слова не мужа, но юнца". TSP>Демагогия. Приплетать юнцов к пробелам, табам и С++
Ну а как ещё понять твои заявления про дебилов? Детский максимализм и только.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
BBI>Ну а как ещё понять твои заявления про дебилов? Детский максимализм и только.
Как моё полное отрицание использования табуляций при форматировании кода и не желание тратить на эти споры лишние буквы.
Здравствуйте, Banned by IT, Вы писали:
XC>>Я хочу, чтобы строка в кавычках была просто объектом. Чтобы не было даже привязки к кодировке (utf16, utf8, windows...), к внутреннему устройству и т.д. BBI>Добро пожаловать в реальный мир.
И как я могу в С++ одновременно иметь две разные константные строки в разных кодировках?
Здравствуйте, Cadet, Вы писали:
S>>Ну да, include нет, есть using.
C>Отсутствие юзинга не помешает использовать нужный класс, а отсутствие инклюда помешает.
Отсутствие юзингов вообще?
Здравствуйте, x-code, Вы писали:
XC>Красота языка определяется отсутствием таких вот обходных путей (а это именно обходной путь!). Да, в данном случае обойти просто... но это в данном случае, вполне могут быть случаи и посложнее. Мне нужен язык, в котором вообще ничего не нужно обходить.
Как страшно жить...
Еще раз: эту обертку делает IDE.
Здравствуйте, Sheridan, Вы писали:
S>Я вот читаю-читаю, но так и не могу понять — откуда у людей такая нелюбовь к ц++? Указатели? Да фигня это, на пару граблей наступить и рефлекс появится. Зато более шустрый софт получается. S>Так все же?
Авторы библии FDG так и пишут — большинство людей не имеет опыта с указателями.
Я уже писал, что указатели это фенька которая сама по себе требует достаточно большой практики для правильного применения. Её нужно долбить до полного автоматизма, что бы быть в состоянии писать качественный код одним только мозжечком, иначе будут косяки во всём коде.
Соответсвенно многим тупо жалко времени на это долбление, тк. можно взять какой Питон и в пять строчек написать то же самое, что взлетит на раз.
Здравствуйте, Sheridan, Вы писали:
C>>Отсутствие юзинга не помешает использовать нужный класс, а отсутствие инклюда помешает. S>Отсутствие юзингов вообще?
Юзингов нет ваще.
C#
class Program
{
static void Main() { System.Console.WriteLine("Hello world!"); }
}
Здравствуйте, x-code, Вы писали:
XC>>>Я хочу, чтобы строка в кавычках была просто объектом. Чтобы не было даже привязки к кодировке (utf16, utf8, windows...), к внутреннему устройству и т.д. BBI>>Добро пожаловать в реальный мир.
XC>И как я могу в С++ одновременно иметь две разные константные строки в разных кодировках? http://en.wikipedia.org/wiki/C%2B%2B11#New_string_literals
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, okman, Вы писали:
O>Допустим, для какой-то задачи мне нужны очень компактные, пусть и не быстрые, строки. O>Стандартная std::string не подходит, так как на 32-битных системах весит "аж" 24 байта. O>Зато есть CString (MFC), QString (Qt) и всякие велосипеды, при желании можно найти или O>собрать реализацию с объектами размером в указатель. O>Прелесть в том, что C++ позволяет выбирать.
Попроси что бы ктото убил тебя. Понавыбираете а потом интеграция превращается в переписывание.
Здравствуйте, x-code, Вы писали:
XC>Невозможность создания namespace внутри класса (вспомните хотя-бы "главные оконные классы" разных библиотек — CWnd, QWidget... сотни методов, там разделение не помешало бы)
Ну если очень надо — можно и нарисовать, благо нетрудно. У меня — не программиста — ушло гдето минут 10...