Результаты поиска
Когда следует использовать неподписанные значения вместо подписанных?
Когда уместно использовать беззнаковую переменную вместо знаковой? А как насчет цикла for ?
Я слышал много мнений по этому поводу и хотел посмотреть, есть ли что-то похожее на консенсус.
for (unsigned int i = 0; i < someThing.length(); i++) {
SomeThing var = someThing.at(i);
// You get the idea.
}
Я знаю, что Java не имеет неподписанных значений, и это, должно быть, было сознательным решением со стороны Sun Microsystems.
Как создать новый экземпляр объекта из типа
Можно не всегда знать Type объекта во время компиляции, но может потребоваться создать экземпляр Type . Как получить новый экземпляр объекта из Type ?
Как я могу определить тип благословенной ссылки в Perl?
В Perl объект - это просто ссылка на любой из основных типов данных Perl, который был благословлен в определенный класс. Когда вы используете функцию ref() для необработанной ссылки, вам говорят, на какой тип данных указывает ссылка. Однако, когда вы вызываете ref() по благословенной ссылке, вам возвращается имя пакета, в который была благословлена ссылка.
Я хочу знать фактический базовый тип благословенной ссылки. Как я могу это определить?
Как я могу определить тип благословенной ссылки в Perl?
В Perl объект - это просто ссылка на любой из основных типов данных Perl, который был благословлен в определенный класс. Когда вы используете функцию ref() для необработанной ссылки, вам говорят, на какой тип данных указывает ссылка. Однако, когда вы вызываете ref() по благословенной ссылке, вам возвращается имя пакета, в который была благословлена ссылка.
Я хочу знать фактический базовый тип благословенной ссылки. Как я могу это определить?
В Cocoa вы предпочитаете NSInteger или int, и почему?
NSInteger / NSUInteger -это Cocoa-определенные замены для обычных встроенных типов.
Есть ли какая-то польза от использования типов NS* над встроенными модулями? Что вы предпочитаете и почему? Являются ли NSInteger и int одинаковой шириной на 32-битных / 64-битных платформах?
Прототипирование с помощью кода Python перед компиляцией
Я уже некоторое время обдумываю написание библиотеки peak fitting. Я знаю Python довольно хорошо и планирую реализовать все в Python для начала, но предполагаю, что мне, возможно, придется повторно реализовать некоторые основные подпрограммы на скомпилированном языке в конечном итоге.
IIRC, один из первоначальных ремитов Python был как язык прототипирования, однако Python довольно либеральен в разрешении функций, функторов, объектов для передачи в функции и методы, тогда как я подозреваю, что то же самое не верно для say C или Fortran.
Что я должен знать о проектировании функций / классов, которые я предполагаю, должны будут взаимодействовать с компилируемым языком? И сколько из этих потенциальных проблем решается такими библиотеками, как cTypes, bgen , SWIG , Boost.Python, Cython или Python SIP ?
Для этого конкретного случая использования (подходящая библиотека) я предполагаю, что пользователи могут определять математические функции (Guassian, Lorentzian и т. д.) как функции Python, которые затем могут быть переданы интерпретируемой библиотекой скомпилированного кода. Передача и возврат массивов также имеет важное значение.
Алгебраические типы данных Haskell
Я пытаюсь полностью понять все концепции Haskell.
В чем алгебраические типы данных похожи на универсальные типы, например, в C# и Java? И чем же они отличаются? И вообще, что в них такого особенного?
Я знаком с универсальной алгеброй и ее кольцами и полями, но у меня есть только смутное представление о том, как работают типы Haskell.
444   0   23:21, 7th August, 2020
Как я могу конвертировать типы в C++?
Я использую две разные библиотеки в своем проекте, и оба они предоставляют базовый прямоугольник struct . Проблема в том, что, похоже, нет способа вставить преобразование между типами, поэтому я не могу вызвать функцию в одной библиотеке с результатом функции в другой. Если бы я был автором любого из них, я мог бы создать преобразования, извне, я не могу.
библиотека а:
typedef struct rectangle { sint16 x; sint16 y; uint16 w; uint16 h; } rectangle;
библиотека б:
class Rect {
int x; int y; int width; int height;
/* ... */
};
Теперь я не могу сделать конвертер class, потому что C++ будет искать преобразование только за один шаг. Это, вероятно, хорошо, потому что было бы много возможностей, связанных с созданием новых объектов всех типов.
Я не могу сделать оператор, который берет struct из a и поставляет объект class из b :
foo.cpp:123 error: ‘operator b::Rect(const rectangle&)’ must be a nonstatic member function
Итак, есть ли разумный способ обойти это?
редактировать:
Возможно, я должен также указать, что мне действительно нужно какое-то решение, которое делает работу с результатом бесшовной, поскольку я не ожидаю, что буду этим кодером. (Хотя я согласен, старая школа, явное обращение было бы хорошим выбором. Другая ветвь, reinterpret_cast имеет ту же проблему..)
edit2:
На самом деле, ни одно из предложений не отвечает на мой фактический вопрос, Конрад Рудольф , кажется, прав. C++ на самом деле не может этого сделать. Отстой, но это правда. (Если это имеет какое-то значение, я собираюсь попробовать подклассы, как предложено CodingTheWheel .
Типы данных для физики
В настоящее время я разрабатываю программу, которая будет включать некоторую физику (ничего особенного, несколько шаров, разбивающихся друг о друга)
Какой самый точный тип данных я могу использовать для представления положения (без ощущения дискретных скачков) в c#?
Кроме того, какое наименьшее количество времени я могу получить между t и t+1? Один тик?
EDIT: уточнение: какова наименьшая единица времени в C#? [TimeSpan].Tick ?