bit-masks

¿Cuál es el propósito de " int mask = ~0;"?

Vi la siguiente línea de código aquí C. int mask = ~0; He impreso el valor de mask en C y C++. Siempre imprime -1. Así q ... untas: ¿Por qué asignar el valor ~0 a la variable mask? ¿Cuál es el propósito de ~0? ¿Podemos usar -1 en lugar de ~0?

¿Cómo definir la enumeración de máscara de bits de categoría para SpriteKit en Swift?

Para definir una enumeración de máscara de bits de categoría en Objective-C I se usa para escribir: typedef NS_OPTIONS(NSUI ... mismo usando Swift? Experimenté con enumeraciones pero no puedo hacerlo funcionar. Esto es lo que he intentado hasta ahora.