"|"является оператором побитового ИЛИ.При использовании так, как в вашем примере кода, он сообщает вызываемой библиотечной функции, что вы хотите включить несколько опций.Другими словами, вы говорите, что вам нужны D3DFVF_XYZ и D3DFVF_DIFFUSE.
Возможно, несколько нелогично использовать «побитовое ИЛИ» для обозначения «И».Это артефакт того, как побитовая логика работает со значениями двоичных чисел.Вам не нужно знать фактические значения этих двух констант, но вы должны понимать, что они являются двоичными значениями, каждое из которых имеет один бит, равный единице (каждый использует другой бит).Когда вы используете оператор побитового ИЛИ для объединения значений, результирующее значение имеет оба установленных бита.Библиотека может легко оценить результат, чтобы определить, какие параметры вы хотите.Если бы вы использовали оператор «побитовое И» «&» вместо «побитовое ИЛИ», результат выражения был бы нулевым, передавая неверную информацию.
Это распространенный метод настройки программного обеспечения.библиотеки.