Perguntas com a marcação «macros»

105
Como faço para usar uma macro em arquivos de módulo?

Tenho dois módulos em arquivos separados dentro da mesma caixa, onde a caixa foi macro_rulesativada. Quero usar as macros definidas em um módulo em outro módulo. // macros.rs #[macro_export] // or not? is ineffectual for this, afaik macro_rules! my_macro(...) // something.rs use macros; // use...

103
Vírgula na macro C / C ++

Digamos que temos uma macro como esta #define FOO(type,name) type name Que poderíamos usar como FOO(int, int_var); Mas nem sempre tão simplesmente: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 Claro que poderíamos fazer: typedef...

95
Constexpr vs macros

Onde devo preferir usar macros e onde devo preferir constexpr ? Eles não são basicamente os mesmos? #define MAX_HEIGHT 720 vs constexpr unsigned int max_height = 720;

86
Macro Vim em todas as linhas de seleção visual

Eu gostaria de executar uma macro em cada linha de uma seleção, em vez de totalizar o número de linhas na minha cabeça. Por exemplo, posso escrever uma macro para transformar: Last, First Para dentro First Last e gostaria que fosse executado em todas estas linhas: Stewart, John Pumpkin,...

85
reproduzir uma macro vim até o final do buffer

Quero executar uma macro que acabei de gravar no registro "x " em cada linha de um buffer aberto, do meu cursor até o final do buffer, no vim. Como faço isso? Eu sei que posso repetir a macro n vezes: 15@x ... ou apenas segure @ até chegar à última linha, mas quero apenas pressionar algumas...

20
Como a macro lambda cria uma lambda?

Encontrei este código no GitHub, mas não o entendi: #define lambda(ret_type, _body) ({ ret_type _ _body _; }) Então: int (*max)(int, int) = lambda(int, (int x, int y) { return x > y ? x : y; }); int max_value = max(1, 2); // max_value is 2 O que os sublinhados estão fazendo dentro do...