Регэкспы нужны для разбора строк средней сложности, язык программирования тут не при чем. То что на Вашей задаче не нужно работать со строками, не означает что в будущем не появится другая задача.
Регэкспы — очень распространенная технология. Несомненно, знакомство с регэкспами отражает уровень программиста.
Если нужно хранить список людей в контейнере std::map неизбежно придется создавать pair<...>(surname, name). Зачем тогда городить дополнительные классы?
Отличная вещь!
Почитал коменты и возниала идея: что если помимо стандартных датчиков поставлять киты для самодельных и еще желательно с двусторонним протоколом. Тогда если кто захочет, сможет сдлать например автоматическое отключение воды.
Согласиьесь, если до дома 2 часа добираться, одно оповещение от потопа не спасет.
Я как физик по профессии и программист-любитель хочу поделиться некоторыми наблюдениями.
В среде физиков свирепствует вопиющая безграмотность в программировании. Некоторые изучили в школе паскаль, или C в институте. Тем не менее, они зачастую стараются сделать все, чтобы не написать ни единой строки кода.
Из этого вытекает пристрастие к отвратительнейшей форме программирования типа MathCAD. Например, весомая доля физических экспериментов автоматизируется при помощи LabView — практически тоже самое, но вместо математических выражений — приборы.
Я экспериментатор, мне не нужно производить долгих расчетов и поэтому мне вполне хватает функциональности Matlab. К матлабу я пришел после долгой борьбы с маткадом… Однако, теоретики отказались и от матлаба и перешли на C++ и java. Основной аргумент: для сложных расчетных задач необходимо разделение типов, чтобы случайно не сложить плотность со скоростью.
Я проголосовал за вариант {}.
Во-первых, на мой взгляд логичнее отделять синтаксические элементы от операторов.
Во-вторых, насколько мне известно, существует тенденция перехода на язык C в курсах информатики.
В-третьих, иногда бывает очень удобно написать много выражений в одну строку. При выделении блоков отступами, код неизбежно становится многострочным.
Как правильно сказали выше, было упущено 3 типа диодов — тунельнвй, фотодиод и светодиод. Также следовало детально рассмотреть диоды Шоттки.
Значиьельно полезнее было бы рассмотреть различные схемы выпрямления тока.
struct hasher: public std::unary_function< const char, void > {
uint32 &res;
inline hasher(uint32 &inp): res(inp){};
inline void operator()( const char c ){res = 31*res + c;};
};
uint32 good_hash_stl(const std::string& str) {
uint32 h = 0;
for_each (str.begin(),str.end(), hasher(h));
return h;
}
Вкупе с вмеменным объектом, получается совсем хорошо:
*************************************
string length: 8 bytes
const char*: 12.35 msec, hash: 312017024
std::string: 3.72 msec, hash: 312017024, 0.30x
propper stl approach: 2.88 msec, hash: 312017024, 0.23x
total allocs: 0
total deallocs: 0
*************************************
string length: 16 bytes
const char*: 19.55 msec, hash: 2657714432
std::string: 8.10 msec, hash: 2657714432, 0.41x
propper stl approach: 6.52 msec, hash: 2657714432, 0.33x
total allocs: 0
total deallocs: 0
*************************************
string length: 32 bytes
const char*: 34.42 msec, hash: 3820028416
std::string: 14.33 msec, hash: 3820028416, 0.42x
propper stl approach: 14.11 msec, hash: 3820028416, 0.41x
total allocs: 0
total deallocs: 0
Но главное — нельзя забывать что std::string делается для удобства работы с динамическими строками.
Регэкспы — очень распространенная технология. Несомненно, знакомство с регэкспами отражает уровень программиста.
В домашних условиях будет непросто сделать ЭЭГ, т.к. измерять 10...100 мкВ проблематично.
Другой вопрос, что в STL не принято их использовать, и применяют в основном pair.
Почитал коменты и возниала идея: что если помимо стандартных датчиков поставлять киты для самодельных и еще желательно с двусторонним протоколом. Тогда если кто захочет, сможет сдлать например автоматическое отключение воды.
Согласиьесь, если до дома 2 часа добираться, одно оповещение от потопа не спасет.
В среде физиков свирепствует вопиющая безграмотность в программировании. Некоторые изучили в школе паскаль, или C в институте. Тем не менее, они зачастую стараются сделать все, чтобы не написать ни единой строки кода.
Из этого вытекает пристрастие к отвратительнейшей форме программирования типа MathCAD. Например, весомая доля физических экспериментов автоматизируется при помощи LabView — практически тоже самое, но вместо математических выражений — приборы.
Я экспериментатор, мне не нужно производить долгих расчетов и поэтому мне вполне хватает функциональности Matlab. К матлабу я пришел после долгой борьбы с маткадом… Однако, теоретики отказались и от матлаба и перешли на C++ и java. Основной аргумент: для сложных расчетных задач необходимо разделение типов, чтобы случайно не сложить плотность со скоростью.
Я проголосовал за вариант {}.
Во-первых, на мой взгляд логичнее отделять синтаксические элементы от операторов.
Во-вторых, насколько мне известно, существует тенденция перехода на язык C в курсах информатики.
В-третьих, иногда бывает очень удобно написать много выражений в одну строку. При выделении блоков отступами, код неизбежно становится многострочным.
Ни чего не тормозит.