Nano Hash - криптовалюты, майнинг, программирование

Вопросы по теме 'c++11'

Какие хорошие практики программирования изменятся с C++11?
Например, «Не возвращайте объекты по значению, если их копирование дорого» (не всегда можно использовать RVO). Этот совет может измениться из-за ссылок на rvalue. То же самое можно сказать и о хранении коллекций указателей на объекты, потому что...
11.01.2024

std :: string без выделения свободной памяти для хранилища
У меня вопрос очень похож на Как выделить std :: строка в стеке с использованием строковой реализации glibc? но думаю стоит спросить еще раз. Я хочу std::string с локальным хранилищем, которое переливается в бесплатное хранилище....

Лямбда-расширение шаблона Variadic
Я пытаюсь реализовать класс делегата, следуя примеру Херба Саттера . В этой статье есть разделы, дублирующие несколько шаблонов; один шаблон для количества аргументов в списке (пример 7, строки 41-59) 1 . Я пытаюсь заменить это вариативным...

Как получить тип цитирования функции-члена?
Возможный дубликат: Можно ли эмулировать шаблон‹авто X›? Следующий код C++ работал в vc2010 template<class T, DWORD (T::*memFnPtr)() > static DWORD WINAPI ThreadProcAdapter( __in LPVOID lpParameter ) { T* pThis =...
18.11.2023

Как часто я должен повторно использовать C++?
Мне просто интересно, достаточно ли запустить генератор случайных чисел только один раз в начале программы. Я пишу функции, которые используют случайные числа. Я никогда не задаю генератор rand() внутри функции, а оставляю вызов srand() в основной...
07.12.2023

Почему я не могу зафиксировать эту ссылку («& this») в лямбда-выражении?
Я понимаю, что правильный способ захвата this (для изменения свойств объекта) в лямбде выглядит следующим образом: auto f = [this] () { /* ... */ }; Но мне любопытна следующая особенность, которую я видел: class C { public:...
28.10.2023

Реализация списка смежности в C++
Я ищу краткое и точное представление списка смежности графа в С++. Мои узлы - это просто идентификаторы узлов. Вот как я это сделал. Просто хочется узнать, что об этом думают специалисты. Есть ли способ лучше? Это реализация класса (ничего...

Частичная специализация: используйте основные члены шаблона
Рассмотреть возможность enum My_Enum { x1, x2 }; template<class T, My_Enum X> class A { void f1(); void f2(); }; template<class T> class A<T,x1> { void g(); } Я хочу использовать функции-члены f1() и...

Многопоточность С++ 11: вывод на консоль
Рассмотрим функцию, которая принимает массив из 100 элементов данных и выводит их на консоль. Теперь предположим, что я запускаю два потока функции на многоядерной машине. Поскольку это многоядерная машина, существует большая вероятность того, что...
21.01.2024

Рендеринг сцены с помощью openGL
Я должен визуализировать сцену, включающую различные сетки с помощью openGL. сетки определяются следующим образом: struct Mesh { frame3f frame; // frame vector<vec3f> pos; // vertex position vector<vec3f> norm;...

увеличение / индексирование priority_queue в STL
Я использую STL priority_queue в качестве структуры данных в моем графическом приложении. Вы можете смело считать это продвинутой версией алгоритма связующего дерева Прима. С помощью алгоритма я хочу эффективно найти узел в очереди приоритетов (а не...
03.12.2023

Возвращение пустоты?
Я не понимаю, почему этот код компилируется без ошибок: #include <iostream> template <class T> struct Test { static constexpr T f() {return T();} }; int main() { Test<void> test; test.f(); // Why not an error?...

Есть ли какая-то техническая причина, почему std::lower_bound не специализирован для итераторов красно-черного дерева?
Я всегда предполагал, что std::lower_bound() выполняется за логарифмическое время, если я передаю ему пару красно-черных итераторов дерева ( set::iterator или map::iterator ). Мне пришлось дважды обжечься, чтобы заметить, что std::lower_bound()...

Как сделать лямбду другом класса?
Скажем, у меня есть класс: class A { int a; }; И у меня есть лямбда: auto function = [](A* a) { a->a; // <== gives an error in this line. }; function(new A); Есть ли способ использовать частный член/метод внутри лямбды?...
26.11.2023

Контейнер производных объектов/умных указателей
Допустим, у меня есть: class Base {...}; class Derived1 : public Base {...}; class Derived2 : public Base {...}; class Derived3 : public Base {...}; class Store { public: void Add(const Base&); //Adds mix of Derived1/2/3 private:...

Как сделать вложенные Initializer_lists в Visual C++ 2013
У меня есть программа, которая работает в g++ и clang, используя вложенный список initializer_list. В Visual C++ одномерный вариант работает, а двухмерный вложенный список инициализаторов — нет. Есть ли трюк, чтобы заставить Visual C++ работать, или...

ошибка: шаблон‹класс _Tp› std::complex‹_Tp› std::polar(const _Tp&, const _Tp&
Я работаю над затмением (kepler) на С++ 11, и мне нужно использовать pow для комплексного числа ( std::complex ), но я получаю следующее ошибка: шаблон std::complex‹_Tp> std::polar(const _Tp&, const _Tp&) int Group::getActivity() const{...

Целочисленное переполнение с UDL (определяемым пользователем литералом) для __int128 @ min отрицательное значение
Для ясности и простоты я буду сокращать следующие числа следующим образом: −170,141,183,460,469,231,731,687,303,715,884,105,728 as -170…728 170,141,183,460,469,231,731,687,303,715,884,105,727 as 170…727 Эти числа представляют...

Почему указатель на int преобразуется в void *, а указатель на функцию преобразуется в bool?
Проект стандарта C ++ (N3337) описывает преобразование указателей следующим образом: 4.10 Преобразования указателей 2 rvalue типа «указатель на cv T », где T - тип объекта, может быть преобразовано в rvalue типа «указатель на cv void...
19.12.2023

clang vs gcc - оптимизация, включая оператор new
У меня есть этот простой пример, который я тестировал, и я заметил, что оптимизации gcc (-O3) не так хороши, как clang, когда задействован оператор new . Мне было интересно, в чем может быть проблема и можно ли каким-то образом заставить gcc...

Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..