314 читали · 9 месяцев назад
Загадочные звездочки: Что значит * и ** в параметрах функций на Python
В языке программирования Python символы * и ** используются в параметрах функций для работы с переменным числом аргументов. Эти символы позволяют передавать функции произвольное количество значений без явного указания их количества. В Python символ * перед именем параметра позволяет принимать произвольное количество позиционных аргументов. При вызове функции все аргументы, которые не соответствуют другим параметрам, собираются в кортеж и присваиваются параметру с символом *. Рассмотрим следующий пример: В данном примере функция print_names принимает произвольное количество аргументов...
284 читали · 5 месяцев назад
От C к C++: Оператор new и всякие-разные конструкторы
В предыдущей части я был приятно удивлён тем, что для создания экземпляра класса на стеке не требуется оператор new, как в других языках: Всё происходит как обычное объявление переменной нужного типа, и объект уже создан (на стеке), и даже вызван его конструктор. На третий день Зоркий Глаз увидел, что в C++ всё-таки используется new: MyClass* test = new MyClass(); Можно писать new MyСlass со скобками или без скобок, но про это позже. А пока про new. На деле оператор new выделяет память под объект из кучи...