Size: a a a

2020 October 30

ПК

Побитый Кирпич... in pro.cxx
Anatoly Tomilov
тогда уж и initializer_list и nullptr_t и ptrdiff_t
initializer_list итак полувшитый в язык, вариант нафиг
источник

NP

Nikita Provotorov in pro.cxx
а это не сломается если потом таки подключить хедер?
источник

NP

Nikita Provotorov in pro.cxx
типа а шо это у тебя господин тут два раза using
источник

AP

Antony Polukhin in pro.cxx
Да не, норм: https://godbolt.org/z/vEWone
источник

AT

Anatoly Tomilov in pro.cxx
Nikita Provotorov
а это не сломается если потом таки подключить хедер?
using T = int; using T = decltype(kakayatohren'); — это аналог static_assert(std::is_same). Старый трюк.
источник

VS

Vlad Serebrennikov in pro.cxx
Nikita Provotorov
типа а шо это у тебя господин тут два раза using
я думаю, оно подпадает под этот пункт: http://eel.is/c++draft/namespace.udecl#9
источник

NP

Nikita Provotorov in pro.cxx
Anatoly Tomilov
using T = int; using T = decltype(kakayatohren'); — это аналог static_assert(std::is_same). Старый трюк.
остроумно однако))
источник

NP

Nikita Provotorov in pro.cxx
Vlad Serebrennikov
я думаю, оно подпадает под этот пункт: http://eel.is/c++draft/namespace.udecl#9
сенкс
источник

М

Максим in pro.cxx
Вечер добрый, использую #pragma omp parallel num_threads(thread_count), когда запускаю код больше чем на 1 потоке. В первом потоке, цикл выполнят только одну итерацию, в чем может быть дело?
источник

TS

Timur Safin in pro.cxx
Ух
источник

TS

Timur Safin in pro.cxx
Переслано от Peter Sovietov
источник

М

Максим in pro.cxx
int omp_get_thread_num();
int main() {
 setlocale(LC_ALL, "Russian");
 long double terms, partial;
 int potoks, thread_count;

 while (1) {
   cout << "Введите степень 10 (кол-во элементов в ряде)\n";
   cin >> terms;
   cout << "Введите количество потоков\n";
   cin >> thread_count;

   if (terms > 0) {
     int i;

     Timer t;
 
     // Ранг потока
     int rank;

     // Указываем количество потоков -- ЧТо-то не правильно

     #pragma omp parallel num_threads(thread_count)
     {
       
       // Указываем количество потоков
       rank = omp_get_thread_num();



       // Вывчисляем количество итераций на поток
       int num_parts = terms / thread_count;

       // Стартовая позиция потока
       int my_first_i = num_parts * rank;

       // Последняя позиция потока
       int my_last_i;

       
       // Если ранг потока равен количеству потоков ( то есть последний), то последняя позиция - количество итераций
       if (rank == thread_count - 1)
       {
         my_last_i = terms;
       }
       else // иначе последняя позиция - первая + количество деталей
       {
         my_last_i = my_first_i + num_parts;
       }


       // высчитываем, складываем мы или вычитаем
       double factor;
       // Четное складыываем
       if (my_first_i % 2 == 0.0)
       {
         factor = 1.0;
       }
       else { // нечетное вычитаем
         factor = -1.0;
       }

       
       
       // вычисляем число на поток
       double my_sum = 0.0;
       for (i = my_first_i; i < my_last_i; i++) {
         my_sum += factor / (2.0 * i + 1.0);
       
           cout << "\nThread START" << rank << " DEBUG: " << my_last_i << "\n";
         
       }
         
     }
     

   }

 }
источник

AZ

Alexander Zaitsev in pro.cxx
Переслано от Peter Sovietov
источник

NS

Nikolai Sinyov in pro.cxx
уже недели 2 голову ломаю. Может кто сталкивается.
Обявляею std::string tmp;  На это обьявление у меня выкидывает exeption ошибки аллокации. Я ничего не понимаю
источник

NS

Nikolai Sinyov in pro.cxx
Nikolai Sinyov
уже недели 2 голову ломаю. Может кто сталкивается.
Обявляею std::string tmp;  На это обьявление у меня выкидывает exeption ошибки аллокации. Я ничего не понимаю
// STRUCT _Default_allocate_traits
struct _Default_allocate_traits {
   __declspec(allocator) static void* _Allocate(const size_t _Bytes) {
       return ::operator new(_Bytes);
   }

из файла  xmemory.
источник

NS

Nikolai Sinyov in pro.cxx
Nikolai Sinyov
// STRUCT _Default_allocate_traits
struct _Default_allocate_traits {
   __declspec(allocator) static void* _Allocate(const size_t _Bytes) {
       return ::operator new(_Bytes);
   }

из файла  xmemory.
Win64. MSVC19, c++17
источник

ПК

Побитый Кирпич... in pro.cxx
Nikolai Sinyov
уже недели 2 голову ломаю. Может кто сталкивается.
Обявляею std::string tmp;  На это обьявление у меня выкидывает exeption ошибки аллокации. Я ничего не понимаю
Как объявляешь то?
источник

NS

Nikolai Sinyov in pro.cxx
Побитый Кирпич
Как объявляешь то?
std::string temp; Вот и всё
источник

ПК

Побитый Кирпич... in pro.cxx
Nikolai Sinyov
std::string temp; Вот и всё
Весь код кидай
источник

ПК

Побитый Кирпич... in pro.cxx
Очевидно, что ошибка не в этом месте
источник