Вопросы с тегом «functions»

38
В C ++ почему и как виртуальные функции работают медленнее?

Может кто-нибудь подробно объяснить, как именно работает виртуальная таблица и какие указатели связаны при вызове виртуальных функций. Если они на самом деле медленнее, можете ли вы показать, что время выполнения виртуальной функции превышает обычные методы класса? Легко потерять отслеживание того,...

34
Имя для функции, которая возвращает свои аргументы?

Функция, которая ничего не делает, не принимает аргументов и ничего не возвращает, традиционно называется a noopили no-op. Пример noop ниже: function noop(){} http://en.wikipedia.org/wiki/NOP Так есть ли имя для функции, которая предназначена только для того, чтобы возвращать свои аргументы и...

33
Являются ли затворы нечистым функциональным стилем?

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

28
Как языки программирования определяют функции?

Как языки программирования определяют и сохраняют функции / методы? Я создаю интерпретируемый язык программирования в Ruby и пытаюсь понять, как реализовать объявление функций. Моя первая идея - сохранить содержание декларации на карте. Например, если я сделал что-то вроде def a() {...

28
Объявление функции как var вместо функции

Все больше и больше я вижу, что функции объявляются как var foo = function() { // things }; Вместо того, как я узнал, как function foo() { // things } Какая разница? Лучшая производительность? Объем? Должен ли я использовать этот...

27
Почему передача больших анонимных функций в качестве аргументов другим функциям так широко принята в JavaScript?

У меня есть мнение (которое, я уверен, некоторые поделятся), что передача анонимных функций, которые содержат более нескольких строк кода, в качестве аргументов для других функций сильно влияет на читабельность и самодокументирование до такой степени, что, как мне кажется, это будет гораздо лучше...

27
Извлечение метода против основополагающих допущений

Когда я разделяю большие методы (или процедуры, или функции - этот вопрос не является специфическим для ООП, но, поскольку я работаю на языках ООП в 99% случаев, это терминология, которая мне наиболее удобна) на множество маленьких Я часто бываю недоволен результатами. Об этих маленьких методах...

24
Несколько аргументов в вызове функции против одного массива

У меня есть функция, которая принимает набор параметров, а затем применяет их как условия к SQL-запросу. Однако, пока я предпочитаю массив с одним аргументом, содержащий сами условия: function searchQuery($params = array()) { foreach($params as $param => $value) { switch ($param) { case 'name':...

23
Является ли хорошей идеей предоставлять разные сигнатуры функций, которые делают одно и то же?

Вот класс C ++, который создается с тремя значениями. class Foo{ //Constructor Foo(std::string, int, char); private: std::string foo; char bar; int baz; }; Все типы параметров разные. Я мог бы перегрузить конструктор, чтобы порядок не имел значения. class Foo{ //Constructors Foo(std::string, char,...

22
Почему Java не позволяет определениям функций присутствовать вне класса?

В отличие от C ++, в Java у нас не может быть просто объявлений функций в классе и определений вне класса. Почему это так? Следует ли подчеркнуть, что один файл в Java должен содержать только один класс и ничего...

22
Функция возвращает true / false против void при успешном завершении и выдает исключение при сбое

Я строю API, функцию, которая загружает файл. Эта функция не будет возвращать ничего / пусто, если файл был загружен правильно, и выдает исключение при возникновении проблемы. Почему исключение, а не просто ложь? Потому что внутри исключения я могу указать причину сбоя (нет соединения, отсутствует...

21
В чем преимущество функции без параметров, которая вызывает только другую функцию

Учебное пособие (для Javascript), которое я делаю, предлагает написать такую ​​функцию: function sayHello() { //Some comments explaining the next line window.alert("Hello"); } Помимо обфускации, есть ли польза от написания чего-то подобного в реальной жизни? Если да, каковы...

20
Почему библиотека C использует макросы и функции с одинаковыми именами?

Я читаю «Стандартную библиотеку С» П. Дж. Плаугера, которая действительно интересна. Книга объясняет не только как использовать библиотеку, но и как она реализована. Я закончил чтение ctype.hраздела и в шапке функции объявлены как макросы и функции. Например int isdigit(int); но и #define...

20
Никогда не делайте публичных участников виртуальными / абстрактными - правда?

Еще в 2000-х мой коллега сказал мне, что делать публичные методы виртуальными или абстрактными - это нехорошо. Например, он считал такой класс не очень хорошо спроектированным: public abstract class PublicAbstractOrVirtual { public abstract void Method1(string argument); public virtual void...

18
Есть ли оптимальное количество строк кода на функцию? [закрыто]

В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и,...

18
Передача функции Scala в метод Java 8

Следующий код Scala работает и может быть передан методу Java, ожидающему функцию. Есть ли более чистый способ сделать это? Вот мой первый проход: val plusOne = new java.util.function.Function[Int,Int] { override def apply(t:Int):Int = t + 1 override def andThen[V](after:function.Function[_ >:...

17
Почему сигнатуры функций PHP настолько противоречивы? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 5 лет назад . Я просматривал некоторые функции PHP и не мог не заметить следующее: <?php...

16
Функция против функции [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . Часто я слышу, как менеджеры проектов говорят о возможностях и функциях. И я...