Dafny tem as seguintes maneiras de declarar tipos que suportam igualdade.
T(==)
Mas existe uma maneira de especificar o tipo que suporta ordenação ( <, <=, >, >=
) etc.?
Dafny tem as seguintes maneiras de declarar tipos que suportam igualdade.
T(==)
Mas existe uma maneira de especificar o tipo que suporta ordenação ( <, <=, >, >=
) etc.?
No código a seguir, um SomeClass
objeto tem escopo dentro de um bloco, mas uma referência a ele é armazenada em p
um bloco externo. E mais tarde, usando p
, SomeMethod()
of SomeClass
é chamado.
SomeClass TestMethod(SomeClass c) {
SomeClass * p;
{
SomeClass t;
p = &t;
}
p->SomeMethod();
return *p;
}
Haverá p->SomeMethod()
falha devido a uma desreferência de ponteiro nulo?
Tentei usar int
in no lugar de SomeClass
e não obtive uma desreferência de ponteiro nulo. Mas quero entender o comportamento de acordo com o padrão C++.