Публикации по теме 'constructor'


День 1: Когда использовать конструктор в React
если вы не инициализируете состояние и не привязываете какой-либо метод, вам не нужно инициализировать конструктор. Конструктор компонента React вызывается до его монтирования. При реализации конструктора для подкласса React.Component вы должны вызывать super(props) перед любым другим оператором. В противном случае this.props будет неопределенным в конструкторе, что может привести к ошибкам. Обычно в React конструкторы используются только для двух целей: Инициализация локального..

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

Статические фабричные методы против конструкторов экземпляров (обычных)?
В языке, где доступны и то, и другое, вы бы предпочли видеть конструктор экземпляра или статический метод, который возвращает экземпляр? Например, если вы создаете String из char[] : String.FromCharacters(chars); new String(chars);...
15790 просмотров

Инициализация переменной-члена C #; лучшая практика?
Лучше ли инициализировать переменные-члены класса при объявлении private List<Thing> _things = new List<Thing>(); private int _arb = 99; или в конструкторе по умолчанию? private List<Thing> _things; private int _arb;...
88106 просмотров
schedule 23.09.2022

Почему компилятор c # выдает Activator.CreateInstance при вызове new с универсальным типом с ограничением new ()?
Когда у вас есть такой код: static T GenericConstruct<T>() where T : new() { return new T(); } Компилятор C # настаивает на вызове Activator.CreateInstance, что значительно медленнее, чем собственный конструктор. У меня есть...
3505 просмотров
schedule 04.03.2022

Универсальный конструктор копирования C#
Как лучше всего написать универсальную функцию конструктора копирования для моих классов С#? Все они наследуются от абстрактного базового класса, поэтому я мог бы использовать отражение для сопоставления свойств, но мне интересно, есть ли лучший...
30827 просмотров
schedule 14.06.2022

Конструктор по умолчанию для классов C ++
Ранее я спрашивал, почему это считается плохим: class Example { public: Example(void); ~Example(void); void f() {} } int main(void) { Example ex(); // <<<<<< what is it called to call it like this? return(0); }...
4021 просмотров
schedule 21.03.2022

Использование инициализаторов и конструкторов в Java
Так что в последнее время я освежал свои навыки Java и нашел несколько функциональных возможностей, о которых раньше не знал. Статические инициализаторы и инициализаторы экземпляра - два таких метода. У меня вопрос: когда можно использовать...
69462 просмотров

Вызов конструктора из другого конструктора того же класса
У меня есть класс с 2 конструкторами: public class Lens { public Lens(string parameter1) { //blabla } public Lens(string parameter1, string parameter2) { // want to call constructor with 1 param here.. } }...
75671 просмотров
schedule 25.10.2022

Как узнать, статически или динамически размещается объект в конструкторе?
Возможный дубликат: Обнаружить динамически размещенный объект? У меня есть объект, который требует немного другой конструкции, независимо от того, является ли его экземпляр статическим или динамическим. Объект должен иметь только один...
1242 просмотров
schedule 28.08.2022

Конструктор класса в шаблоне
У меня есть класс кеша объектов, подобный этому: #include "boost/thread/mutex.hpp" #include "boost/unordered_map.hpp" template <typename type1, typename type2> class objectCache { public: objectCache() { IDCounter = 0;...
1021 просмотров
schedule 04.11.2022

Как инициализировать константное поле в конструкторе?
Представьте, что у меня есть класс C++ Foo и класс Bar, который должен быть создан с помощью конструктора, в который передается указатель Foo, и этот указатель должен оставаться неизменным в жизненном цикле экземпляра Bar. Каков правильный способ...
84192 просмотров

JavaScript: как создать новый экземпляр класса без использования ключевого слова new?
Я думаю, что следующий код прояснит вопрос. // My class var Class = function() { console.log("Constructor"); }; Class.prototype = { method: function() { console.log("Method");} } // Creating an instance with new var object1 = new Class();...
59307 просмотров
schedule 05.02.2022

Добавление кода в конструктор с альтернативным синтаксисом класса
type Foo = class inherit Bar val _stuff : int new (stuff : int) = { inherit Bar() _stuff = stuff } end Я хочу добавить этот код в конструктор выше: if (stuff < 0) then...
275 просмотров
schedule 04.01.2024

Конструктор с массивом подклассов абстрактного класса в качестве параметра
Я работаю над системой инвентаризации игроков для игры. У меня есть структура Slot , в которой есть коллекция List‹Loot›, представляющая, какие виды предметов разрешены в ней. Абстрактный класс Loot является подклассом всех предметов, которые...
828 просмотров

как использовать my_alloc для _all_ новых вызовов в С++?
Представьте, что я в C-стране, и у меня есть void* my_alloc(size_t size); void* my_free(void*); затем я могу просмотреть свой код и заменить все вызовы malloc/free на my_alloc/my_free. Как, я знаю, что данный класс Foo, я могу делать...
382 просмотров

Почему шаг в конструкторе System.Drawing.Bitmap должен быть кратным 4?
Я пишу приложение, которое требует, чтобы я взял проприетарный формат растрового изображения (MVTec Halcon HImage) и преобразовал его в System.Drawing.Bitmap на C #. Единственные частные функции, данные мне, чтобы помочь мне в этом, включают запись...
20670 просмотров
schedule 11.09.2022

Как связать метод с вновь созданным объектом?
Я хотел бы знать, есть ли способ связать методы для вновь созданного объекта в PHP? Что-то типа: class Foo { public function xyz() { ... return $this; } } $my_foo = new Foo()->xyz(); Кто-нибудь знает способ добиться этого?
17364 просмотров

В чем разница между абстрактным классом и классом только с защищенными конструкторами? (.СЕТЬ)
В чем разница между абстрактным классом и классом только с защищенными конструкторами? Они кажутся мне очень похожими, поскольку вы не можете создать экземпляр ни одного из них. РЕДАКТИРОВАТЬ: Как бы вы создали экземпляр в производном классе с...
1398 просмотров
schedule 14.02.2022

Конструктор копирования сегментов
Мой код выглядит следующим образом: void Scene::copy(Scene const & source) { maxnum=source.maxnum; imagelist = new Image*[maxnum]; for(int i=0; i<maxnum; i++) { if(source.imagelist[i] != NULL) { imagelist[i] = new Image;...
874 просмотров
schedule 15.12.2022

Неявный вызов инициализатора родительского класса
class A(object): def __init__(self, a, b, c): #super(A, self).__init__() super(self.__class__, self).__init__() class B(A): def __init__(self, b, c): print super(B, self) print super(self.__class__, self)...
3995 просмотров

С# - закрытие полей класса внутри инициализатора?
Рассмотрим следующий код: using System; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { var square = new Square(4); Console.WriteLine(square.Calculate());...
1114 просмотров