Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 5.00
SONNY
8 / 8 / 0
Регистрация: 30.05.2009
Сообщений: 47
#1

std::partition - C++

06.11.2009, 09:43. Просмотров 1065. Ответов 0
Метки нет (Все метки)

Почему алгоритм работает не корректно, хотя std::stable_partition работает нормально
Перенос нечетных элементов в начало массива
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <algorithm>
#include "RCObject.h"
 
struct Part
{
    Part(): count( 0 ) {}
    size_t count;
};
 
 
class RC_part
{
public:
    RC_part(): ptr( new Part ) {}
    template <typename _Ty>
    bool operator () ( const _Ty& v_ ) { return (ptr->count)++%2 == 0 ? false : true; }
private:
    RCClass<Part> ptr; //класс с подсчетом ссылок
};
 
int _tmain( int argc, _TCHAR* argv[] )
{
    int coll_arr[] = { 1, 20, 8, 35, 49, 54, 69, 0, 5, -7 };
    std::partition( coll_arr, coll_arr + sizeof(coll_arr)/sizeof(int), RC_part() );
}
Добавлено через 58 минут
Можно закрыть.разобрался
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2009, 09:43     std::partition
Посмотрите здесь:

Ошибка: E2034 Cannot convert 'int' to 'std::vector<std::vector<TRabbitCell,std::allocator<TRabbitCell>>... - C++ Builder
Есть двухмерный вектор: std::vector&lt;std::vector&lt;TRabbitCell&gt; &gt; *cells(5, 10); Пытаюсь заполнить его объектами класса...

std::string, std::fstream, ошибка кучи - C++
где то начало вылетать при операции += с локальной переменной std::string. Заменил на свой qString. Замечательно, то же самое... ошибка при...

Быстродействие std::unordered_map vs. std::unordered_multimap - C++
Привет, скажите пожалуйста, есть какие-либо существенные просадки по скорости исполнения программы, если использовать...

Lambda expressions only available with -std=c++11 or -std=gnu++11 - C++
В студии все работает, в qt попробовал mingw - выводит варнинг lambda expressions only available with -std=c++11 or -std=gnu++11 а...

Lambda expressions only available with -std=c++11 or -std=gnu++11 - C++
Нужна помощь. Код: #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;vector&gt; #include &lt;algorithm&gt;

Распределитель памяти идентичный std::allocator. Непонятные синтаксис и концепция std::allocator::construct - C++
Компилятор: MSVC 2010 Exress код моего класса распределяющего память под спойлером #include &lt;stdlib.h&gt; // my memory allocator...

std::string + std::remove - C++
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;algorithm&gt; int main() { std::string str(&quot;hello, world. have a nice...

Std::atomic vs std::mutex - C++
class AtomicSome { private: std::atomic_bool _isReady; //not std::atomic_flag public: ...

std::sort + std::lower_bound - C++
тема такая: есть класс person: class Person{ private: string name_; string adress_; long phone_; есть вектор объектов...

Std::mutex и std::recursive_mutex - C++
Есть некий класс: class A { public bool some_method(); private: std::mutex mutex_;

Ошибка "non-static data member initializers only available with -std=c++11 or -std=gnu++11" - C++
Компилирую вот этот код: #include &lt;algorithm&gt; #include &lt;iostream&gt; #include &lt;set&gt; #include &lt;vector&gt; ...

Ошибка terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc - C++
Есть задача: Написать программу, которая считывает текст из файла и выводит его на экран, заменив цифры от 0 до 9 на слова &quot;ноль&quot;,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru