Perguntas com a marcação «language-design»

25
O que fazer se eu odeio arquivos de cabeçalho C ++?

Eu sempre fiquei confuso sobre os arquivos de cabeçalho. Eles são tão estranhos: você inclui o arquivo .h que não inclui o .cpp, mas o .cpp também é de alguma forma compilado. Recentemente, ingressei em um projeto de equipe e, é claro, são usados ​​.h e .cpp. Entendo que isso é muito importante,...

22
"Set" deve ter um método Get?

Vamos ter essa classe C # (seria quase a mesma em Java) public class MyClass { public string A {get; set;} public string B {get; set;} public override bool Equals(object obj) { var item = obj as MyClass; if (item == null || this.A == null || item.A == null) { return false; } return...

19
Por que dois pontos em vez de ponto?

Há rumores de que as implementações iniciais do C ++ tiveram um operador de ponto para acesso ao namespace. Há uma opinião de que o ponto é mais conveniente que o operador moderno de dois pontos. Qual foi o motivo por trás da introdução do cólon

19
Por que x = x ++ é indefinido?

É indefinido porque modifica xduas vezes entre os pontos de sequência. O padrão diz que é indefinido, portanto é indefinido. Isso eu sei. Mas por que? Meu entendimento é que proibir isso permite que os compiladores otimizem melhor. Isso poderia ter feito sentido quando C foi inventado, mas agora...