В то время как ломал голову над некоторыми фактами о дизайне классов, в частности, должны ли функции быть члены или нет, я изучил «Эффективный c ++» и обнаружил правило 23, а именно: «Предпочитайте функции, не являющиеся членами, а не дружественные функции». Прочитать это из первых рук с помощью примера веб-браузера имело смысл, однако вспомогательные функции (названные в книге функциями, не являющимися членами, как это) в этом примере изменяют состояние класса, не так ли?
Итак, первый вопрос: разве они не должны быть членами?
Читая немного дальше, он рассматривает функции STL и, действительно, некоторые функции, которые не реализуются некоторыми классами, реализованы в stl. Следуя идеям книги, они развиваются в некоторые удобные функции, которые упакованы в разумные пространства имен, такие как std :: sort
, std :: copy
из алгоритма
. Например, класс vector
не имеет функции sort
, и используется функция stl sort
, так что она не является членом класса vector. Но можно также распространить те же рассуждения на некоторые другие функции в классе векторов, такие как assign
, так что это также не может быть реализовано как член, а как вспомогательная функция. Однако это также меняет внутреннее состояние объекта, например sort, с которым он работал. Так каково же объяснение этой тонкой, но важной (я полагаю) проблемы.
сдвинуть только одну длинную строку, где находится курсор. Остальная часть файла останется в своем ...
Как мне сделать следующее:
zw
(аналогично zl
но переходите по словам) У меня есть .vimrc
настройки , установленные nowrap
. Это потому, что код выглядит лучше, чем обернутые строки. Но есть проблема с горизонтальной навигацией.
Я заметил, что ярлык zl
(не путайте l (L) с 1), который смещается вправо ( zh
в оставил). Я хочу создать программу на C #, которая вводит команды в работающее окно командной строки. Есть указатели? Спасибо, Пол.
У меня есть окно командной строки, в котором запускается веб-программа. Я хочу создать программу на C #, которая вводит команды в окно запущенной командной строки.
Есть указатели?
Спасибо, Пол.