Это не зависящий от языка вопрос, хотя я помечен языками, чтобы дать некоторые теги, относящиеся к образцам кода, которые я публикую ниже. Я немного новичок в программировании. На разных языках я видел функции, которые имеют параметры, разделенные тем, что, по моему мнению, является побитовым оператором OR
. Я использовал эти функции, не понимая, как работают параметры.Функциональные параметры формы foo (A | B | C)
Приведу несколько примеров, если вы не знаете, о чем я говорю.
От http://www.php.net/manual/en/function.error-reporting.php:
<?php
// Turn off all error reporting
error_reporting(0);
// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// Reporting E_NOTICE can be good too (to report uninitialized
// variables or catch variable name misspellings ...)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// Report all errors except E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);
// Report all PHP errors (see changelog)
error_reporting(E_ALL);
// Report all PHP errors
error_reporting(-1);
// Same as error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
?>
От http://www.cplusplus.com/doc/tutorial/files/:
ofstream myfile ("example.bin", ios::out | ios::app | ios::binary);
Что такое сделка с функциями, которые имеют параметры, как это? Может кто-нибудь объяснить?
это битовая маска. Каждый флаг имеет силу в два, поэтому они могут быть объединены вместе без потери информации. –