O compilador não está conseguindo resolver o overload dos construtores. Veja:
Horario(int d = 0, int h = 0, int m = 0, int s = 0) pode ser considerado um construtor de 0, 1, 2, 3 ou 4 parâmetros. Quando o usuário faz uma chamada setando só o primeiro parâmetro, o construtor usado é Horario(d) com um parâmetro definido ( o d ) e os demais assumindo valor padrão. Então pra esse caso de um parâmetro há ambiguidade com a outra definição Horario(int s).
Preciso guardar o número de um CPF, só não quero fazer isso usando vetor... Não dá pra fazer usando um tipo de dado já existente, como o int... mesmo usando 'unsigned long int', no qual o valor máximo suportado é de 4294967295...
Eu queria então criar um tipo de dado novo, chamar, sei lá, de 'sint' (superint)... um tipo com as caracteristicas do int (4 bytes), mas com 5 bytes já me servia...