История изменений
Исправление wandrien, (текущая версия) :
Близким аналогом void, кстати, выступает тип, порождаемый через namespace
.
namespace-тип можно присваивать другим именам и сравнивать с другими типами. Инстанцировать его нельзя, размера он не имеет.
namespace void2 of end;
type v1 = void;
type v2 = void2;
static_assert(v1 == void);
static_assert(v2 == void2);
static_assert(v1 != v2);
static_assert(void != void2);
void2 f(); /* Ошибка */
void f(void2); /* Ошибка */
Исправление wandrien, :
Аналогом void, кстати, выступает тип, порождаемый через namespace
.
namespace-тип можно присваивать другим именам и сравнивать с другими типами. Инстанцировать его нельзя, размера он не имеет.
namespace void2 of end;
type v1 = void;
type v2 = void2;
static_assert(v1 == void);
static_assert(v2 == void2);
static_assert(v1 != v2);
static_assert(void != void2);
void2 f(); /* Ошибка */
void f(void2); /* Ошибка */
Исходная версия wandrien, :
Аналогом void, кстати, выступает тип, порождаемый через namespace
.
namespace-тип можно можно присваивать другим именам и сравнивать с другими типами. Инстанцировать его нельзя, размера он не имеет.
namespace void2 of end;
type v1 = void;
type v2 = void2;
static_assert(v1 == void);
static_assert(v2 == void2);
static_assert(v1 != v2);
static_assert(void != void2);
void2 f(); /* Ошибка */
void f(void2); /* Ошибка */