Вопросы с тегом 'nested-function'

Вложенные функции - это функции, определение которых лексически заключено в определение другой функции. Вложенные функции не обязательно доступны на всех языках, имеющих понятие функции, и точное значение термина варьируется в зависимости от языка.
7

Почему вложенные функции python не называются замыканиями?

Я видел и использовал вложенные функции в Python, и они соответствуют определению замыкания. Итак, почему они называются nested functions вместо closures? Вложенные функции не замыкаются, потому что они не используются внешним миром? ОБНОВЛЕНИЕ:...
26 окт. '10 в 3:11
3

Локальные переменные в вложенных функциях Python

Хорошо, медведь со мной на этом, я знаю, что это будет выглядеть ужасно запутанным, но, пожалуйста, помогите мне понять, что происходит. from functools import partial class Cage(object): def __init__(self, animal): self.animal = animal ...
14 сент. '12 в 11:28
9

Для чего нужны вложенные функции PHP?

В JavaScript вложенные функции очень полезны: закрытие, частные методы и то, что у вас есть. Для чего нужны вложенные функции PHP? Кто-нибудь их использует и зачем? Вот небольшое исследование, которое я сделал <?php function outer( $msg ) { ...
06 янв. '09 в 9:56
6

Вложенная функция JavaScript

У меня есть кусок кода для javascript, который я просто не понимаю: function dmy(d) { function pad2(n) { return (n < 10) ? '0' + n : n; } return pad2(d.getUTCDate()) + '/' + pad2(d.getUTCMonth() + 1) + '/' + d.g...
03 сент. '11 в 20:16
6

Вложенная функция в Python

Какую выгоду или последствия мы можем получить с кодом Python следующим образом: class some_class(parent_class): def doOp(self, x, y): def add(x, y): return x + y return add(x, y) Я нашел это в проекте с открытым ис...
19 окт. '09 в 14:40
9

Как вложенные функции работают в Python?

def maker(n): def action(x): return x ** n return action f = maker(2) print(f) print(f(3)) print(f(4)) g = maker(3) print(g(3)) print(f(3)) # still remembers 2 Почему вложенная функция запоминает первое значение 2, даже если mak...
05 янв. '10 в 12:29
7

Вложенная функция вызова JavaScript

У меня есть следующий фрагмент кода: function initValidation() { // irrelevant code here function validate(_block){ // code here } } Можно ли каким-либо образом вызвать функцию validate() вне функции initValidation()? Я пробов...
11 янв. '12 в 10:39
2

Функция внутри функции - каждый раз?

Пусть у нас есть этот код: def big_function(): def little_function(): ....... ......... Документация Python говорит о def: Определение функции - исполняемый оператор. Его выполнение связывает имя функции... Итак, вопрос: Выпо...
16 апр. '13 в 7:24
7

Имитация вложенных функций в С++

В C следующий код работает, я всегда использую gcc. int foo( int foo_var ) { /*code*/ int bar( int bar_var ) { /*code*/ return bar_var; } return bar(foo_var); } Как добиться одинаковой функциональности вложенных функций в С++ в ...
18 мар. '11 в 18:04
12

Вложенные функции - это плохо в gcc?

Я знаю, что вложенные функции не являются частью стандартного C, но, поскольку они присутствуют в gcc (и тот факт, что gcc является единственным компилятором, который меня интересует), я склонен использовать их довольно часто. Это плохо? Если да, н...
28 мая '10 в 13:22
1

Реализация вложенных функций

Недавно я узнал, что gcc разрешает определение вложенной функции. На мой взгляд, это классная функция, но мне интересно, как ее реализовать. В то время как нетрудно реализовать прямые вызовы вложенных функций, передав указатель контекста в качестве ...
18 нояб. '11 в 8:16
3

Как изменить переменную функции вложенности в вложенной функции

Я хочу, чтобы переменная, определенная в функции вложенности, изменялась во вложенной функции, что-то вроде def nesting(): count = 0 def nested(): count += 1 for i in range(10): nested() print count Когда вызываетс...
01 июн. '11 в 9:05
3

Как объединить несколько вложенных замещающих функций в Excel?

Я пытаюсь настроить функцию для форматирования строки, которая позже будет конкатенирована. Пример строки будет выглядеть так: Standard_H2_W1_Launch_123x456_S_40K_AB Хотя иногда "S" не существует, а иногда "40K" - "60K" или нет, а "_AB" также може...
11 мар. '14 в 0:13
2

Как я могу объявить тип функции, определенной в let

Я хочу написать что-то вроде: f :: (a -> b) -> a -> c -> b f g = let inner :: a -> c -> b inner x y = g x in inner но это дает мне ошибку. Потому что он не признает, что я пытаюсь ссылаться на те же типы "a" и "b", ...
20 мая '14 в 1:05
2

Как блокировки фиксируют значения из предыдущих вызовов?

typealias IntMaker = (Void)->Int func makeCounter() ->IntMaker{ var n = 0 // Line A func adder()->Integer{ n = n + 1 return n } return adder } let counter1 = makeCounter() counter1() // returns 1 counter1...
15 июн. '16 в 14:59