Posso `` restringir '' isso de alguma forma?
Eu estive assistindoPalestra de Mike Acton sobre design orientado a dados em C ++ no CppCon 2014, e ele dá este exemplo:
int Foo::Bar(int count)
{
int value = 0;
for (int i = 0; i < count; i++) {
if (m_someDataMemberOfFoo) value++
}
return value;
}
E explica como alguns compiladores continuam a relerm_someDataMemberOfFoo
em todas as iterações, talvez porque seu valor possa mudar devido ao acesso simultâneo. Independentemente de ser apropriado para o compilador fazê-lo - alguém pode dizer ao compilador que ignore especificamente qualquer possibilidade de acesso simultâneo a qualquer coisa durante a execução de algum método, para que ele otimize melhor?
Em outras palavras, posso dizer ao compilador quethis
é__restrict__
ed?