De tempos em tempos, vejo um enum como o seguinte: [Flags] public enum Options { None = 0, Option1 = 1, Option2 = 2, Option3 = 4, Option4 = 8 } Não entendo exatamente o que o [Flags]atributo faz. Alguém tem uma boa explicação ou exemplo que poderia
De tempos em tempos, vejo um enum como o seguinte: [Flags] public enum Options { None = 0, Option1 = 1, Option2 = 2, Option3 = 4, Option4 = 8 } Não entendo exatamente o que o [Flags]atributo faz. Alguém tem uma boa explicação ou exemplo que poderia
Estou tentando atualizar meu compilador C ++ para C ++ 11. Pesquisei um pouco e cheguei à conclusão de que tenho de usar a bandeira -std=c++0xou -std=gnu++0x, mas não sei muitas coisas sobre bandeiras. Alguém pode me ajudar? (Estou usando o Ubuntu 12.04.) Aqui está o erro que eu recebo do...
Ouvi de várias fontes (embora principalmente de um colega meu) que a compilação com um nível de otimização -O3em g ++ é de alguma forma 'perigosa' e deve ser evitada em geral, a menos que seja necessário. Isso é verdade? Se sim, por quê? Devo apenas estar aderindo
Por toda a minha vida, não me lembro como definir, excluir, alternar ou testar um pouco em um campo de bits. Ou não tenho certeza ou os confundo porque raramente preciso deles. Portanto, seria bom ter uma "folha de dicas". Por exemplo: flags = flags | FlagsEnum.Bit4; // Set bit 4. ou if...
Imagine o seguinte Um tipo T tem um campo Empresa. Ao executar o seguinte método, ele funciona perfeitamente: Type t = typeof(T); t.GetProperty("Company") Com a chamada a seguir, fico nulo Type t = typeof(T); t.GetProperty("company", BindingFlags.IgnoreCase) Alguém tem uma
Digamos que eu tenho esse enum: [Flags] enum Letters { A = 1, B = 2, C = 4, AB = A | B, All = A | B | C, } Para verificar se, por exemplo, ABestá definido, posso fazer o seguinte: if((letter & Letters.AB) == Letters.AB) Existe uma maneira mais simples de verificar se algum dos...
Estou tentando escrever um script que irá verificar dois sinalizadores de erro e, caso um sinalizador (ou ambos) sejam alterados, ele ecoará - ocorreu um erro. Meu script: my_error_flag=0 my_error_flag_o=0 do something..... if [[ "$my_error_flag"=="1" || "$my_error_flag_o"=="2" ] || [...
Estou compilando meu aplicativo C ++ usando o GCC 4.3. Em vez de selecionar manualmente os sinalizadores de otimização que estou usando -march=native, o que, em teoria, deve adicionar todos os sinalizadores de otimização aplicáveis ao hardware no qual estou compilando. Mas como posso verificar...
Por que as pessoas sempre usam valores de enum como 0, 1, 2, 4, 8e não 0, 1, 2, 3, 4? Isso tem algo a ver com operações de bits, etc.? Eu realmente aprecio um pequeno trecho de amostra de como isso é usado corretamente :) [Flags] public enum Permissions { None = 0, Read = 1, Write = 2,...
Além da configuração -Walle da configuração -std=XXX, que outros sinalizadores de compilador realmente úteis, mas menos conhecidos, existem para uso em C? Estou particularmente interessado em avisos adicionais e / ou em transformar avisos em erros em alguns casos para minimizar absolutamente...
Eu tenho uma enumeração de bandeira abaixo. [Flags] public enum FlagTest { None = 0x0, Flag1 = 0x1, Flag2 = 0x2, Flag3 = 0x4 } Não posso fazer com que a declaração if seja verdadeira. FlagTest testItem = FlagTest.Flag1 | FlagTest.Flag2; if (testItem == FlagTest.Flag1) { // Do something,...
Há uma variável que contém alguns sinalizadores e quero remover um deles. Mas não sei como removê-lo. Aqui está como eu defino a bandeira. my.emask |=
Se eu tiver uma variável segurando uma enumeração de sinalizadores, posso de alguma forma iterar sobre os valores de bits nessa variável específica? Ou preciso usar Enum.GetValues para iterar toda a enumeração e verificar quais estão
Muitas vezes, vejo declarações de flag enum que usam valores hexadecimais. Por exemplo: [Flags] public enum MyEnum { None = 0x0, Flag1 = 0x1, Flag2 = 0x2, Flag3 = 0x4, Flag4 = 0x8, Flag5 = 0x10 } Quando declaro uma enumeração, geralmente a declaro assim: [Flags] public enum MyEnum { None...
Qual é a diferença entre gcc -pthreade gcc -lpthreadqual é usado durante a compilação de programas
Já vi muitas maneiras de executar códigos ou scripts Perl, com sinalizadores diferentes. No entanto, quando tento pesquisar no Google o que significa cada sinalizador, obtenho principalmente resultados para sites Perl genéricos e nenhuma informação específica sobre os sinalizadores ou seu uso é...
Eu entendo que CFLAGS (ou CXXFLAGS para C ++) são para o compilador, enquanto CPPFLAGS é usado pelo pré-processador. Mas ainda não entendo a diferença. Preciso especificar um caminho de inclusão para um arquivo de cabeçalho que está incluído com #include - porque #include é uma diretiva de...
Encontrou um sinalizador JVM interessante: java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version Ele imprime centenas de várias opções, das quais nunca ouvi falar antes. Ele também imprime valores padrão, o que ajuda a diagnosticar melhor os comportamentos da JVM. Outra bandeira...
Gostaria de saber que opção você passa para o compilador gcc para desligar os avisos de variáveis não utilizadas. Estou recebendo erros do boost no windows e não quero mexer no código do boost: C:\boost_1_52_0/boost/system/error_code.hpp: At global
O que quero fazer é algo assim: tenho enums com valores sinalizados combinados. public static class EnumExtension { public static bool IsSet<T>( this T input, T matchTo ) where T:enum //the constraint I want that doesn't exist in C#3 { return (input & matchTo) != 0; } } Então...