Описание тега empty-class

2 ответа

Я создаю пустой класс Java и компилирую его, будет ли создан любой конструктор

Я создаю пустой класс Java и компилирую его, будет ли создан любой конструктор, так как он успешно компилируется Класс ABC { }
22 июл '17 в 23:45
3 ответа

Какую функцию C++ пишет и вызывает в пустом классе?

В книге Effective C++ я видел отрывок ниже: В результате, если вы напишите class Empty{}; это по сути так же, как если бы вы написали это: class Empty { public: Empty() { ... } Empty(const Empty& rhs) { ... } ~Empty() { ... } Empty& operator…
1 ответ

Исключения в C++: пустой класс

Ниже приведен отрывок из раздела "Программирование: принципы и практика использования C++". Я сбит с толку нотацией броска Bad_area(). Книга пытается объяснить это: "Bad_area() означает" Создать объект типа Bad_area "", продолжая с того, что затем в…
15 авг '13 в 05:53
8 ответов

Каков размер пустого класса в C++, Java?

Каков размер пустого класса в C++ и Java? Почему это не ноль?sizeof(); возвращает 1 в случае C++.
25 янв '11 в 04:14
3 ответа

Сравнение дескрипторов: пустые классы против неопределенных классов против void*

Microsoft GDI+ определяет много пустых классов, которые будут обрабатываться как внутренние. Например, (источник GdiPlusGpStubs.h) //Approach 1 class GpGraphics {}; class GpBrush {}; class GpTexture : public GpBrush {}; class GpSolidFill : public Gp…
24 дек '10 в 10:47
2 ответа

Почему нельзя создать объект const пустого класса

#include <iostream> class A { public: void foo() const { std::cout << "const version of foo" << std::endl; } void foo() { std::cout << "none const version of foo" << std::endl; } }; int main() { A a; const A ac; a.foo()…
17 мар '11 в 06:55
1 ответ

Цепное наследование пустых классов все еще необходимо?

Есть ли еще веские причины для использования базовых случаев с цепочками, а не плоского множественного наследования? Раньше было так, что некоторые классы были разработаны для наследования в цепочке. Я думаю, что это было заставить пустую оптимизаци…
4 ответа

Генерация пустых объектов - пустой класс с пустыми свойствами / подклассами C#

У меня есть два класса: public class HumanProperties { int prop1; int prop2; string name;} public class Human{int age; HumanProperties properties;} Теперь, если я хочу создать новый экземпляр Human, я должен сделать Human person = new Human();Но ког…
25 фев '13 в 06:47
1 ответ

Нужен ли нам когда-нибудь пустой класс в Java-проекте? Если да, то почему?

В пустом классе (без полей и свойств) также компилятор автоматически создает конструктор по умолчанию после компиляции. Если мы никогда не используем этот пустой класс, то почему компилятор создает этот конструктор по умолчанию?
09 май '17 в 04:41
3 ответа

Пустой производный класс, унаследованный от непустого базового класса

class Base { int i ; }; class Derived : public Base { } ; int main() { cout << sizeof(Derived); } Output : 4 В базовом классе, поскольку я является частным, он не должен наследоваться от производного класса. Следовательно, Базовый класс должен…
25 сен '13 в 19:14
1 ответ

Можем ли мы обнаружить пустые классы в C++03?

Возможный дубликат: Есть ли простой способ определить, нет ли в классе / структуре данных-членов? Можем ли мы обнаружить emply классы, возможно, используя шаблон? struct A {}; struct B { char c;}; std::cout << is_empty<A>::value; //shoul…
14 фев '11 в 17:34
2 ответа

Почему пустая оптимизация базового класса не работает?

Почему оптимизация пустого базового класса (EBO) не применяется полностью в Visual C++? Если у меня много базовых классов, могу ли я помочь компилятору выполнить эту оптимизацию? #include <iostream> struct T1 { }; struct T2 { }; struct T3 { };…
03 окт '12 в 03:26
2 ответа

Почему sizeof(Derived4) равен 8 байтам? Я думаю, что это должно быть 5 байтов

Это вывод данной программы: sizeof(Empty) 1 sizeof(Derived1) 1 sizeof(Derived2) 4 sizeof(Derived3) 1 sizeof(Derived4) 8 sizeof(Dummy) 1 Это программа: #include <iostream> using namespace std; class Empty {}; class Derived1 : public Empty {}; c…
1 ответ

Кое-что о совершенно пустом классе

#include <iostream> using namespace std; class Empty{ char omg[0]; }; int main() { Empty em1, em2; Empty set[100]; cout << sizeof(Empty) << " " << sizeof(em1) << " " << sizeof(em2) << endl; cout << (lo…
12 сен '14 в 08:48
1 ответ

Ошибка метода пустого метода установки JavaScript

Учитывая этот код: let person = { _name: 'Lu Xun', _age: 137 } Нужно добавить новый метод установки, чтобы изменить возраст человека. Я пытаюсь добавить пустую age метод установки, но получить сообщение об ошибке Неожиданный идентификатор или "Долже…
03 мар '18 в 23:10
4 ответа

Пустой объект класса Python

Я преподаю класс python по объектно-ориентированному программированию, и пока я разбираюсь, как объяснить классы, я увидел пустое определение класса: class Employee: pass далее в этом примере определяется имя и другие атрибуты для объекта этого клас…
01 июн '11 в 15:50
2 ответа

Создайте пустой объект без конструктора по умолчанию

Предположим, у меня есть тип F, я знаю это F пусто, но F не имеет конструктора по умолчанию, поэтому я не могу использовать F() построить это. Есть ли способ получить действительный объект типа F так или иначе? Кажется, я вспомнил упоминание о том, …
12 июл '19 в 16:13
0 ответов

Частное наследование и выделение памяти пустых классов в C++

Я наткнулся на этот пример из " Практических шаблонов проектирования с C++ " Федора Г. Пикуса, касающийся частного наследования и выделения памяти "пустых" классов. class Empty { public: void useful_function(); }; // sizeof(Empty) == 1 class Derived…
15 фев '20 в 15:27
3 ответа

C++ - вызывает ли выделение памяти пустому классу утечку памяти?

В коде OctoMap появляется следующая функция: class AbstractOcTreeNode {}; -> Они объявляют пустой класс AbstractOcTreeNode** children; -> Это заявлено в OcTreeDataNode файл заголовка класса template <typename T> void OcTreeDataNode<T>::a…
12 дек '19 в 19:39
1 ответ

Почему пустой класс C++ не имеет выравнивания по байтам?

Недавно я узнал, что пустой класс имеет размер 1 вместо нуля. Почему у него нет байтового выравнивания, при котором его размер должен быть равен 4 в 32-битной среде? Какой адрес у следующего объекта?
17 май '20 в 18:25