Найдите ответы на ваши вопросы по программированию

Присоединяйтесь к сообществу разработчиков, делитесь знаниями и получайте помощь

или

Сообщество

Получите помощь от опытных разработчиков и помогайте другим

Быстрые ответы

Получайте ответы на ваши вопросы в течение нескольких минут

Репутация

Зарабатывайте репутацию и ачивки за помощь другим

5
голоса
5
ответов
59
просмотров
Определение typedef для указателя на функцию?

Я изучаю, как динамически загружать DLL, но не могу понять следующую строку кода:

typedef void (*FunctionFunc)();

У меня есть несколько вопросов. Буду признателен, если кто-то сможет на них ответить.

  1. Зачем используется typedef?
  2. Синтаксис выглядит странно; после void не должно...
5
голоса
5
ответов
59
просмотров
Элегантные способы поддержки эквивалентности ("равенства") в классах Python

При написании пользовательских классов часто важно обеспечить эквивалентность с помощью операторов == и !=. В Python это возможно благодаря реализации специальных методов eq и ne соответственно. Наилучший способ, который я нашел для этой задачи, выглядит следующим образом:

class Foo: ...

5
голоса
4
ответов
59
просмотров
Улучшение размера/интервала подграфиков при использовании большого количества подграфиков

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

5
голоса
5
ответов
59
просмотров
Как отключить предупреждения о неиспользуемом коде на уровне крейта в Rust?

Я сталкиваюсь с проблемой в Rust, когда во время работы над проектом меня постоянно беспокоят предупреждения о "мертвом коде", что затрудняет концентрацию на задачах. Я попытался использовать атрибут #[allow(dead_code)], однако он позволяет подавить только одно предупреждение за раз.

Вот пример...

6
голоса
5
ответов
59
просмотров
Какой идиоматичный эквивалент тернарного оператора C в Go?

В языках C/C++ (и во многих других языках, принадлежащих к этой семье) распространенным приемом при объявлении и инициализации переменной в зависимости от условия является использование тернарного оператора:

int index = val > 0 ? val : -val

В языке Go нет тернарного оператора. Как наиболее...

5
голоса
5
ответов
59
просмотров
Python Pandas: Как получить индексы строк, где значение в столбце соответствует заданному?

У меня возникла проблема с поиском индексов в DataFrame по колонке "BoolCol", где значения равны True. В данный момент я использую следующий способ с итерацией, который работает корректно:

for i in range(100, 3000):
    if df.iloc[i]['BoolCol'] == True:
         print(i,...
5
голоса
5
ответов
59
просмотров
Как развернуть иерархический индекс в столбцах

У меня есть датафрейм с иерархическим индексом по оси 1 (колонки), который получен в результате операции groupby.agg. Пример структуры данных представлен ниже:

     USAF   WBAN  year  month  day  s_PC  s_CL  s_CD  s_CNT  tempf       
                                     sum   sum   sum   ...
5
голоса
5
ответов
59
просмотров
Лучший способ "отрицать" оператор instanceof

Проблема: Как красиво отрицать instanceof в Java?

Я задумался, существует ли более красивый способ отрицать instanceof в Java. На данный момент я использую следующий код:

if (!(myObject instanceof SomeClass)) { /* делаем что-то */ }

Однако мне кажется, что должна быть более...

0
голоса
4
ответов
59
просмотров
Неоднозначный вызов метода: обе методы assertEquals(Object, Object) и assertEquals(double, double) в Assert совпадают

Я получаю следующую ошибку:

Обе версии метода assertEquals(Object, Object) в классе Assert и assertEquals(double, double) в классе Assert совпадают

Эта ошибка возникает на строке кода в моих тестах Junit, где метод getScore() возвращает значение типа...

0
голоса
2
ответов
59
просмотров
Индексация массива numpy с помощью списка кортежей

Проблема с индексированием ndarray с использованием списка кортежей

Я пытаюсь индексировать массив ndarray, используя список кортежей в следующем формате:

idx = [(x1, y1), ... (xn, yn)]
X[idx]

Однако это не срабатывает, и вместо этого мне приходится использовать более сложный...