История изменений
Исправление Sadler, (текущая версия) :
И вызвать метод класса не создав объект не получится.
Статический метод — легко.
При использовании union его поля будут ссылаться на один адрес в памяти, а общая длина будет, соответственно, не суммой длин всех полей, а максимальной длиной поля. Может быть полезно, если одна и та же переменная может иметь разные типы, например, но на практике я не использовал.
struct существует, чтобы определить структуру хранения набора значений в памяти (включая имена полей и типы), потому в нём нет и не должно быть непосредственно логики, в отличие от классов.
namespace разграничивает области видимости для различных модулей.
Исправление Sadler, :
И вызвать метод класса не создав объект не получится.
Статический метод — легко.
При использовании union его поля будут ссылаться на один адрес в памяти, а общая длина будет, соответственно, не суммой длин всех полей, а максимальной длиной поля. Может быть полезно, если одна и та же переменная может иметь разные типы, например, но на практике я не использовал.
struct существует, чтобы определить структуру хранения набора значений в памяти (включая имена полей и типы), потому в нём нет и не должно быть непосредственно логики, в отличие от классов.
Исправление Sadler, :
И вызвать метод класса не создав объект не получится.
Статический метод — легко.
При использовании union его поля будут ссылаться на один адрес в памяти, а общая длина будет, соответственно, не суммой длин всех полей, а максимальной длиной поля. Может быть полезно, если одна и та же переменная может иметь разные типы, например, но на практике я не использовал.
Исходная версия Sadler, :
И вызвать метод класса не создав объект не получится.
Статический метод — легко.