Вопросы по теме 'constructor'

__construct() против SameAsClassName() для конструктора в PHP
Есть ли преимущество в использовании __construct() вместо имени класса для конструктора в PHP? Пример ( __construct ): class Foo { function __construct(){ //do stuff } } Пример (имя): class Foo { function Foo(){...
19733 просмотров
schedule 26.01.2024

Нет подходящей ошибки конструктора по умолчанию в Visual C++
Я не понимаю. Я смотрю на код три часа и не вижу проблемы. Создаваемый мной класс под названием TwoDayPackage является производным от класса Package. Вот как я определил конструктор: TwoDayPackage(string, string, string, string, int,...
53013 просмотров
schedule 23.04.2024

Как вызывать методы из конструктора в F#
Мне известно об этом вопросе , но автор вопроса, похоже, удовлетворился ответом на другой вопрос (как перегрузить конструктор) У меня есть класс, который действует как продвинутый мемоизатор вокруг изменяемого класса, так что я могу рассматривать...
852 просмотров
schedule 06.03.2024

Как контейнеры STL копируют объекты?
Я знаю, что контейнеры STL, такие как vector , копируют объект при его добавлении. push_back метод выглядит так: void push_back ( const T& x ); Я удивлен, увидев, что элемент принимается как ссылка . Я написал пример программы,...
8586 просмотров
schedule 30.08.2022

Статический блок в Ruby
Я некоторое время был программистом на Java и некоторое время пытаюсь переключиться на рубин. Я просто пытался разработать небольшую тестовую программу на рубине, и мое намерение примерно следующее. Я хочу создать простой тип связанного списка...
4918 просмотров
schedule 18.02.2024

Лучше ли использовать Enumerable.Empty‹T›() вместо нового List‹T›() для инициализации IEnumerable‹T›?
Предположим, у вас есть класс Person : public class Person { public string Name { get; set;} public IEnumerable<Role> Roles {get; set;} } Я, очевидно, должен создать экземпляр Ролей в конструкторе. Теперь я делал это со списком...
42388 просмотров
schedule 26.06.2022

Когда использовать getInstanceOf вместо конструктора
Пару месяцев назад я посетил презентацию, которую устроили два представителя независимой компании по разработке программного обеспечения. В основном это касалось хорошего дизайна и практики программного обеспечения. Эти два парня говорили в...
3362 просмотров
schedule 08.01.2024

C++: инициализатор конструктора для массивов
У меня спазм мозга... как мне правильно инициализировать массив объектов в C++? пример без массива: struct Foo { Foo(int x) { /* ... */ } }; struct Bar { Foo foo; Bar() : foo(4) {} }; пример массива: struct Foo { Foo(int...
142520 просмотров
schedule 13.09.2022

C++: гарантии порядка построения и инициализации
У меня есть некоторые сомнения относительно гарантий порядка построения и инициализации в C++. Например, следующий код имеет четыре класса X , Y , Z и W . Основная функция создает экземпляр объекта class X , который содержит объект class Y и...
8797 просмотров
schedule 27.03.2024

Как скопировать **kwargs себе?
Есть ли способ определить __init__ , чтобы ключевые слова, определенные в **kwargs , были назначены классу? Например, если бы мне нужно было инициализировать класс ValidationRule с помощью ValidationRule(other='email') , значение для...
8837 просмотров

Передача параметра конструктору базового класса или использование переменной экземпляра?
Все классы, производные от определенного базового класса, должны определять атрибут под названием «путь». В смысле утиной печати я мог полагаться на определение в подклассах: class Base: pass # no "path" variable here def Sub(Base): def...
17933 просмотров

Синтаксис конструктора F# — переопределение и дополнение новых
У меня есть одноразовый класс с синтаксисом Open/Close, который я хотел бы иметь use , поэтому я пытаюсь наследовать от него и работать с Open в new и Close в Dispose. Вторая часть в порядке, но я не могу понять, как сделать Open: type...
272 просмотров
schedule 09.03.2024

Сколько экземпляров и ссылок создается для базового подкласса?
В С# .NET у меня есть 2 конкретных класса. Класс A и B. Класс B является подклассом класса A. Сколько экземпляров (объектов в куче) и ссылок из стека на объекты кучи создается для каждой строки кода: ClassB b = new ClassB(); ClassA a...
1019 просмотров
schedule 09.01.2024

В чем разница между созданием экземпляра в конструкторе или в определении поля?
В чем разница между этим: public class Foo { private Bar bar; public Foo() { bar = new Bar(); } } и это: public class Foo { private Bar bar = new Bar(); public Foo() { } }
1236 просмотров
schedule 23.04.2024

Что-то не так с этим дизайном для инициализации массива в DLL?
Предположим, у нас есть DLL, и в ней должен храниться глобально массив, который будет экспортироваться, дело в том, что мы хотим инициализировать его, прочитав некоторый контент из файла, поэтому лично я не нахожу другого пути, кроме как поставить...
226 просмотров

Clojure: назначение полей дезаписи из карты
Следуя Как сделать запись из последовательности значений , как вы можете написать вызов конструктора defrecord и назначить поля из Map , оставив безымянные поля nil ? (defrecord MyRecord [f1 f2 f3]) (assign-from-map MyRecord {:f1 "Huey" :f2...
3703 просмотров
schedule 17.07.2022

Когда использовать какой конструктор для ComponentName в Android?
Я немного запутался в классе ComponentName в Android. Есть разные способы добраться до объекта имени компонента, но я не знаю, когда какой использовать... и почему! Пример: Пакет приложений de.zordid.sampleapp но класс поставщика...
27494 просмотров
schedule 28.03.2024

Инициализировать статическое конечное поле в конструкторе
public class A { private static final int x; public A() { x = 5; } } final означает, что переменная может быть назначена только один раз (в конструкторе). static означает, что это экземпляр класса. Я...
97209 просмотров
schedule 08.10.2023

Добавление перегруженного конструктора, требующего кода инициализации, к неявному типу F#
В настоящее время у меня есть следующий код: type Matrix(sourceMatrix:double[,]) = let rows = sourceMatrix.GetUpperBound(0) + 1 let cols = sourceMatrix.GetUpperBound(1) + 1 let matrix = Array2D.zeroCreate<double> rows cols...
117 просмотров

Конструктор F # не принимает кортежи?
Я попытался использовать кортеж для создания нового экземпляра класса, определенного в F#. Чтобы воспроизвести проблему, я попробовал следующий код. type test(x: int, y:int) = let distance = x * x + y * y |> float |> sqrt...
658 просмотров
schedule 03.08.2022