Glfw: Colisões de valor de dica

Criado em 21 jun. 2016  ·  3Comentários  ·  Fonte: glfw/glfw

Essas definições em glfw3.h têm os mesmos valores, acredito que não é assim que deveria ser, embora também não cause problemas (afaik).

#define GLFW_NATIVE_CONTEXT_API     0x00036001
#define GLFW_EGL_CONTEXT_API        0x00036002

#define GLFW_ARROW_CURSOR           0x00036001
#define GLFW_IBEAM_CURSOR           0x00036002
bug verified

Comentários muito úteis

@shurcooL Sim, exatamente. Ele quebra o padrão e perde a capacidade de eliminar a ambigüidade por valor.

Provavelmente mudará para enums para 4.0.

Todos 3 comentários

Opa. Obrigado por perceber isso! Provavelmente não causará problemas, como você disse, mas ainda está errado.

ainda está errado

Posso perguntar por que você considera isso errado? Se essas definições forem partes de namespaces separados, a sobreposição de seus valores não está errada. É isso?

Concordo que usar valores diferentes pode ser uma boa ideia porque ajudará a detectar possíveis erros do usuário, onde alguém poderia usar erroneamente um define para um namespace para uma função que espera outra, e porque não há sistema de tipos para detectá-lo, o único outra maneira de detectar esse erro é evitar a reutilização dos mesmos valores. Talvez seja isso que você quis dizer?

@shurcooL Sim, exatamente. Ele quebra o padrão e perde a capacidade de eliminar a ambigüidade por valor.

Provavelmente mudará para enums para 4.0.

Esta página foi útil?
0 / 5 - 0 avaliações