Size: a a a

2021 March 15

SS

Sergey Skvortsov in pro.cxx
Андрей Руссков
формально отношение не является симметричным по умолчанию
Там так прописано, что оно симметричное
источник

SS

Sergey Skvortsov in pro.cxx
Андрей Руссков
то есть мы можем предполагать что A* можно привести к double* но double* к B* привести нельзя (опять же, считая отношение несимметричным по умолчанию)
Это отношение не про указатели, а конкретные объекты
Не существует объекта типа double, являющегося одновременно первым членом объекта типа A и объекта типа B
источник

АР

Андрей Руссков... in pro.cxx
нет, там явно не указана его несимметричность )
источник

SS

Sergey Skvortsov in pro.cxx
Андрей Руссков
нет, там явно не указана его несимметричность )
В каждом из пунктов рассуждают "если один объект такой, а другой - такой" (не первый / второй), что влечет симметричность
источник

VS

Vlad Serebrennikov in pro.cxx
если бы оно было асимметричное, то без терминов вроде source и target не обошлось бы, мне кажется
источник

VS

Vlad Serebrennikov in pro.cxx
Андрей Руссков
формально отношение не является симметричным по умолчанию
откуда этот тезис?
источник

АР

Андрей Руссков... in pro.cxx
Vlad Serebrennikov
откуда этот тезис?
потому что симметричность операции следует из её определения а не наоборот
источник

АР

Андрей Руссков... in pro.cxx
Sergey Skvortsov
Это отношение не про указатели, а конкретные объекты
Не существует объекта типа double, являющегося одновременно первым членом объекта типа A и объекта типа B
собственно поэтому отношение и нельзя считать симметричным? )
источник

SS

Sergey Skvortsov in pro.cxx
Андрей Руссков
собственно поэтому отношение и нельзя считать симметричным? )
А где нарушается симметричность в таком случае?
источник

АР

Андрей Руссков... in pro.cxx
если double* указывает на член A, то он никогда не может быть равен какому-то B*?
источник

АР

Андрей Руссков... in pro.cxx
что противоречит симметричности
источник

SS

Sergey Skvortsov in pro.cxx
Андрей Руссков
если double* указывает на член A, то он никогда не может быть равен какому-то B*?
Это свойство объектов, а не произвольных указателей
источник

SS

Sergey Skvortsov in pro.cxx
В структуре struct { double a; double b; } a и b не будут pointer interconvertible
источник

SS

Sergey Skvortsov in pro.cxx
Первый член объекта типа A вряд ли будет одновременно первым членом объекта B (для A и B, определенных выше)
источник

АР

Андрей Руссков... in pro.cxx
все примеры которые ты сейчас приводишь как раз противоречат симметричности )
источник

АР

Андрей Руссков... in pro.cxx
A* можно привести к double* потому что первый нестатический член A double
источник

АР

Андрей Руссков... in pro.cxx
а наоборот уже нет потому что из множества возможных double далеко не все принадлежат A
источник

SS

Sergey Skvortsov in pro.cxx
Андрей Руссков
A* можно привести к double* потому что первый нестатический член A double
Объект A не будет pointer interconvertible с произвольным объектом double
источник

ПК

Побитый Кирпич... in pro.cxx
Андрей Руссков
а наоборот уже нет потому что из множества возможных double далеко не все принадлежат A
источник

АР

Андрей Руссков... in pro.cxx
какая разница чего это свойства то
источник