Что делает оператор двоеточия (": "), делают в этом конструкторе? Это эквивалентный MyClass (m_classID =-1, m_userdata = 0);? класс MyClass {общественность: MyClass (): m_classID (-1), m_userdata (0) {}...
У меня есть класс Python, который похож на это: класс Процесс: определение __ init __ (сам, PID, PPID, cmd, FDs, достижимый, пользователь): сопровождаемый: сам. PID=PID сам. PPID=PPID self.cmd =...
У меня есть класс, который похож: класс Foo {общественность: Foo (); виртуальный ~Foo (); частный: Odp* панель;}; я хочу инициализировать панель к ПУСТОМУ УКАЗАТЕЛЮ. Действительно ли это - лучший способ сделать это? Foo:: Foo (): панель (ПУСТОЙ УКАЗАТЕЛЬ)
Я всегда был хорошим мальчиком при записи моих классов, добавлении префикса всех членских переменных m_: класс Тест {интервал m_int1; интервал m_int2; общественность: Тест (интервал int1, интервал int2): m_int1 (int1), m_int2 (...
У меня есть вопрос о том, как поймать исключение в списке инициализации. Например, у нас есть класс Foo, полученный из класса Панели Foo {общественность: Foo (интервал i) {бросает 0; }} класс Панель: общественность...
Из то, что я знаю преимуществ использования списка инициализации, - то, что они обеспечивают эффективность при инициализации участников класса, которые не являются сборкой - в. Например, Fred:: Fred (): x _ (безотносительно) {}...
Действительно ли возможно использовать список инициализации конструктора дочернего класса для инициализации элементов данных, объявленных, как защищено в родительском классе? Я не могу заставить это работать. Я могу работать вокруг этого, но этого...
Хорошо, переменные-члены можно использовать для инициализации других переменных-членов в списке инициализации (с учетом порядка инициализации и т. д.). Как насчет функций-членов? Если быть точным, то...
В C ++ вы можете использовать список инициализаторов для инициализации полей класса перед запуском конструктора. Например: Foo :: Foo (string s, double d, int n): name (s), weight (d), age (n) {// ...
В Эффективном C ++ сказано, что элементы данных в списке инициализации должны быть перечислены в порядке их объявления . Далее говорится, что причиной этого является то, что деструкторы для ...
struct B { int b1, b2; B(int, int); };
struct D : B { int d1, d2;
// что технически лучше? D (int i, int j, int k, int l) : B(i,j), d1(k), d2(l) {}; b(i, j), d1(k), d2(l) // 1-я база
// или D (int i, int j, ...
Я использую квадратичное выражение, где y = ax ^ 2 + bx + c, где a, b, c - константы, а x - переменная. Вот мой класс: class quadratic {
общественность:
двойная оценка (const double x);
void ...
Мой работодатель придерживается политики использования списков инициализации в конструкторе, поскольку это более эффективно. Однако я разрабатываю класс, который имеет 45 членов данных, требующих инициализации. Per ...
Хотя мне очень нравятся новые возможности C++11, иногда я чувствую, что мне не хватает некоторых тонкостей. Инициализация массива int работает нормально, инициализация вектора Element2 работает нормально, но ...
Это Можно ли инициализировать ссылочный член NULL в С ++?
Я пытаюсь примерно так: класс BigClass
{
частный: Объект m_inner;
public: const Object & ReadOnly; BigClass (): ...
Я пытаюсь научиться инициализировать списки. У меня есть простой класс ниже и я пытаюсь инициализировать список переменных. Первый месяц (int m): месяц (m) работает. Я пытаюсь сделать что-то подобное ...
Я слышал, что преимущество использования списков инициализации в конструкторе будет то, что не будут дополнительных копий типа класса объекты. Но что это означает для следующего кода в классе T ...
У меня есть этот пример для создания уникальных объектов в вектор: #include
#include <вектор>
#include <алгоритм> int v = 0; структура A
{A (): refValue (v ++) {std :: ...
Parashift хорошо объясняет списки инициализации, но не объясняет, почему дополнительная копия переменной создается раньше назначение в теле ctor, но дополнительная копия не создается при назначении через ...
Предположим, у меня есть следующий класс: class MyInteger {private: int n_; public: MyInteger (int n): n_ (n) {}; // БОЛЬШЕ ВЕЩЕЙ }; И предположим, что у этого класса нет тривиального конструктора по умолчанию ...
У меня вопрос об инициализации унаследованных членов в конструкторе производного класса. Пример кода: class A {
общедоступные: int m_int; }; class B: public A {
public: B (): m_int (0) {} ...