Uno de los problemas con su uso (al menos para mí) es que en MSVC tiene que incluir iso646.h
o utilizar el (en su mayoría inservibles) interruptor/Za.
el principal problema que tengo con ellos es la captura -22 que no son de uso común, por lo que requieren que mi cerebro procese activamente el significado, donde los operadores pasados de moda están más o menos arraigados (algo así como la diferencia entre leer una lección aprendida idioma vs. tu lengua materna).
Aunque estoy seguro de que superaría ese problema si su uso se hiciera más universal. Si eso ocurriera, entonces tendría el problema de que algunos operadores booleanos tienen palabras clave, mientras que otros no lo hacen, por lo que si se utilizan palabras clave alternativas, es posible que vea expresiones como:
if ((x not_eq y) and (y == z) or (z <= something)) {...}
cuando me parece que deberían tienen fichas alternativos para todos los (al menos comparación) operadores:
if ((x not_eq y) and (y eq z) or (z lt_eq something)) {...}
Esto es porque la razón se proporcionaron las palabras clave alternativas (y dígrafos y trigrafos) no era hacer las expresiones más legible - que era porque históricamente han sido (y tal vez todavía lo son) teclados y/o páginas de códigos en algunas localidades que no tienen cierta puntuación ch personajes. Por ejemplo, a la parte invariable de la página de códigos ISO 646 (sorpresa) le faltan los caracteres '|
', '^
' y '~
', entre otros.
Y para ampliar ligeramente la pregunta, ¿alguien está usando dígrafos? –
Ni siquiera sabía que existían. Los he probado ahora y no compilan. –
Probablemente necesite buscar una opción en su compilador para activarla. – inazaruk