Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.97/29: Рейтинг темы: голосов - 29, средняя оценка - 4.97
134 / 19 / 2
Регистрация: 06.05.2019
Сообщений: 1,325
Записей в блоге: 3
1

Можно ли создать массив в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться int и т.д.?

10.08.2019, 23:35. Показов 6044. Ответов 119

Такой вопрос: я хочу создать одномерный массив в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться bool, с 10 по 14 будет храниться int. Я видел пример со структурами как раз на этом форуме, но я потерял ссылку на сайт? Можно ли создать такой массив и какими способами?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.08.2019, 23:35
Ответы с готовыми решениями:

Создать базу из трех сотрудников, где будут храниться их имена
суть задачи: нужно создать базу из трех сотрудников, где будут храниться их имена, з.п, должности,...

Можно ли в com-сервере создать массив в котором будут храниться данные какое-то время
Можно ли в com-сервере сделать так, чтобы одна из процедур выполняла вычисления и заносила их в...

Создать массив, содержащий массивы, которые, в свою очередь, содержат массивы, в которых уже будут храниться различные типы данных
Мне нужно создать массив, содержащий массивы, которые, в свою очередь, содержат массивы, в которых...

Создать централизованную базу данных, где будут храниться все клиенты, всех офисов
Доброго времени суток ! Есть проблема одна. Несколько офисов, работают ведут учет клиентов в...

119
Модератор
Эксперт по электронике
8471 / 6300 / 852
Регистрация: 14.02.2011
Сообщений: 21,848
12.08.2019, 00:32 41
Цитата Сообщение от hoggy Посмотреть сообщение
но это - не принципиальный фактор.
это как раз и принципиально
массив однородный и состоит он или из union, variant, или там структур
это другие типы данных, совсем другие. это не double не int и ни что то другое
Цитата Сообщение от hoggy Посмотреть сообщение
я тебя ещё раз спрашиваю: ты старт-топик читал?
давай вместе перечитаем
Цитата Сообщение от Nexi99 Посмотреть сообщение
в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться bool, с 10 по 14 будет храниться int.
где здесь про union, variant и что то еще?
Цитата Сообщение от hoggy Посмотреть сообщение
понятно, что массив вариантов - это массив вариантов, а не массив double , int, или bool.
а топик стартер просил именно этого(double , int, или bool)
1
Эксперт С++
8402 / 4078 / 891
Регистрация: 15.11.2014
Сообщений: 9,168
12.08.2019, 01:19 42
Цитата Сообщение от ValeryS Посмотреть сообщение
массив однородный и состоит он или из union, variant, или там структур
это другие типы данных, совсем другие. это не double не int и ни что то другое
я тебе ещё раз повторяю:

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

насчет union - конечно это не int.
ну и что?

тебе какая печаль то?
тебе надо покласть в массив объекты разных типов.
ты берёшь и кладешь.
для того union и существует.

а не несешь всякую чушь: "так нельзя"

Цитата Сообщение от ValeryS Посмотреть сообщение
в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться bool, с 10 по 14 будет храниться int.
Цитата Сообщение от ValeryS Посмотреть сообщение
где здесь про union, variant и что то еще?
человеку надо покласть в массив объекты разных типов.
человек поклал в массив объекты разных типов.
человеку надо извлечь из массива объекты разных типов.
человек извлек объекты разных типов.

union или variant - это способы как достичь желаемого.
просто способы, как можно организовать такой волшебный масссив.

неужели это так сложно понять?

Добавлено через 2 минуты
Цитата Сообщение от ValeryS Посмотреть сообщение
а топик стартер просил именно этого(double , int, или bool)
нехай додумывать ака бабака на лавочке.

он ваял конкретно:
Цитата Сообщение от Nexi99 Посмотреть сообщение
я хочу создать одномерный массив в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться bool, с 10 по 14 будет храниться int.
Цитата Сообщение от Nexi99 Посмотреть сообщение
Можно ли создать такой массив и какими способами?
0
"C with Classes"
1485 / 1287 / 485
Регистрация: 16.08.2014
Сообщений: 5,414
Записей в блоге: 1
12.08.2019, 07:16 43
hoggy, короче, меня слушай, Можно ли создать массив в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться int и т.д.?, ты че там про массив несешь?
2
Модератор
Эксперт по электронике
8471 / 6300 / 852
Регистрация: 14.02.2011
Сообщений: 21,848
12.08.2019, 07:39 44
Цитата Сообщение от hoggy Посмотреть сообщение
массив - лишь формально коллекция однотипных элементов.
формально ли?
sizeof(arr[0])==sizeof(arr[5]) да или нет?
а sizeof(arr[0])==sizeof(double) да или нет?
а sizeof(arr[0])==sizeof(int) да или нет?
а sizeof(arr[0])==sizeof(bool) да или нет?
Цитата Сообщение от hoggy Посмотреть сообщение
просто способы, как можно организовать такой волшебный масссив.
а еще можно создать массив строк и вписывать туда значения,потом считывать их, чем не решение?
только это будет массив строк, а не массив double
Цитата Сообщение от hoggy Посмотреть сообщение
а не несешь всякую чушь: "так нельзя"
как нельзя?
создать массив из разношерстных элементов нельзя
а обернуть эти элементы какой то контейнер и создать массив из этих контейнеров можно
но кто-нибудь объяснит зачем?
1
567 / 406 / 132
Регистрация: 22.11.2017
Сообщений: 1,043
12.08.2019, 10:07 45
Цитата Сообщение от ValeryS Посмотреть сообщение
создать массив из разношерстных элементов нельзя
Тип - это абстракция, призванная обеспечить целостность. А также преобразование значений.
В памяти значения хранятся в двоичном представлении, а тип указывает как интерпретировать тот или иной набор 1 и 0.
Я попробовал, написал код. Программа выделяет блок памяти и помещает в него разнотипные значения. Затем их можно прочитать, зная по сколько блоков памяти брать и каким типом это воспринять.
Дело в том, что у меня мало опыта работы с указателями, я расповадился STL-ом. Код, который я набрал работает не корректно. Кто желает - отредактируйте и выложите его или напишите свой на идею обезличенного обращения к памяти. Мне интересно увидеть рабочий код.

Кликните здесь для просмотра всего текста

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <iostream>
#include <vector>
#include <numeric>
#include <algorithm>
 
template <typename T>
T* pusher(void* ptr, T value)
{
    *(static_cast<T*>(ptr)) = value;
    auto new_ptr = static_cast<T*>(ptr) + sizeof(T);
    std::cout << "pusher(): pointer = " << static_cast<T*>(ptr)
        << " type = " << typeid(T).name()
        << " value = " << *(static_cast<T*>(ptr)) << "\n";
    return new_ptr;
}
 
template <typename T>
void* reader(void* ptr, T& value)
{
    value = *(static_cast<T*>(ptr));
    auto new_ptr = static_cast<T*>(ptr) + sizeof(T);
    std::cout << "reader(): pointer = " << static_cast<T*>(ptr)
        << " type = " << typeid(T).name()
        << " value = " << *(static_cast<T*>(ptr)) << "\n";
    return new_ptr;
}
 
int main()
{
    setlocale(LC_ALL, "Rus");
 
    size_t count_bytes = 5u * (sizeof(double) + sizeof(bool) + sizeof(int));
    //std::cout << "count_bytes = " << count_bytes << "\n";
    void* arr = calloc(count_bytes, 1);
    void* arr2 = arr;
    void* arr3 = arr;
    {
        size_t idx = 0u;
        for (; idx < 5u; ++idx)
            arr = pusher(arr, static_cast<double>(0.5 * idx));
        for (; idx < 10u; ++idx)
            arr = pusher(arr, static_cast<bool>(idx & 1u));
        for (; idx < 15u; ++idx)
            arr = pusher(arr, static_cast<int>(2 * idx));
    }
    std::cout << "\n";
    {
        size_t idx = 0u;
        for (; idx < 5u; ++idx)
        {
            double value;
            arr2 = reader(arr2, value);
            std::cout << value << "\n";
        }
        for (; idx < 10u; ++idx)
        {
            bool value;
            arr2 = reader(arr2, value);
            std::cout << std::boolalpha << value << "\n";
        }
        for (; idx < 15u; ++idx)
        {
            int value;
            arr2 = reader(arr2, value);
            std::cout << value << "\n";
        }
    }
    free(arr3);
    std::cout << "\n";
 
    return 0;
}


На скрине приведёно успешное выполнение программы. Она то крашится, то норм. выполняется. Я говорю, что в указателях не столь хорошо разбираюсь на текущий момент.
0
Миниатюры
Можно ли создать массив в котором с 0 по 4 элемент будут храниться double, с 5 по 9 будут храниться int и т.д.?  
93 / 78 / 23
Регистрация: 19.10.2013
Сообщений: 480
12.08.2019, 10:17 46
Цитата Сообщение от SomniPhobia Посмотреть сообщение
Код, который я набрал работает не корректно. Кто желает - отредактируйте и выложите его или напишите свой на идею обезличенного обращения к памяти.
Это какая-то жесть, чесслово я не думаю что кому-то когда-то может понадобиться то, что вы пытаетесь реализовать.

Идея и потребность в сохранении разных примитивных типов в одном контейнере вполне прозрачна и объяснима, но то что пытаетесь сделать вы - грязные трюки для каких-нибудь соревнований по мастерству владения Си/С++, которые нельзя нигде применять.
0
567 / 406 / 132
Регистрация: 22.11.2017
Сообщений: 1,043
12.08.2019, 10:47 47
WxMaper, это для эксперимента. Таким конечно не надо пользоваться.
Я нашёл ошибку в своём коде: при инкрементации указателя смещение происходит на автоматически рассчитанное приращение, исходя из типа. То есть надо писать не так
C++
1
T* new_ptr = static_cast<T*>(ptr) + sizeof(T) * n;
А так. Компилятор сам прибавляет sizeof(T) * n вместо n
C++
1
T* new_ptr = static_cast<T*>(ptr) + n;
где для данного кода n = 1.
Теперь всё работает успешно.

Кликните здесь для просмотра всего текста

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <iostream>
#include <vector>
#include <numeric>
#include <algorithm>
 
template <typename T>
T* pusher(void* ptr, T value)
{
    *(static_cast<T*>(ptr)) = value;
    T* new_ptr = static_cast<T*>(ptr) + 1;
    std::cout << "pusher(): pointer = " << static_cast<T*>(ptr)
        << " type = " << typeid(T).name()
        << " sizeof(T) = " << sizeof(*(static_cast<T*>(ptr)))
        << " value = " << *(static_cast<T*>(ptr)) << "\n";
    return new_ptr;
}
 
template <typename T>
void* reader(void* ptr, T& value)
{
    value = *(static_cast<T*>(ptr));
    T* new_ptr = static_cast<T*>(ptr) + 1;
    std::cout << "reader(): pointer = " << static_cast<T*>(ptr)
        << " type = " << typeid(T).name()
        << " value = " << *(static_cast<T*>(ptr)) << "\n";
    return new_ptr;
}
 
int main()
{
    setlocale(LC_ALL, "Rus");
 
    size_t count_bytes = 5u * (sizeof(double) + sizeof(bool) + sizeof(int));
    std::cout << "count_bytes = " << sizeof(int) << "\n";
    void* arr = calloc(count_bytes, 1);
    void* arr2 = arr;
    void* arr3 = arr;
    {
        size_t idx = 0u;
        for (; idx < 5u; ++idx)
            arr = pusher(arr, static_cast<double>(0.5 * idx));
        for (; idx < 10u; ++idx)
            arr = pusher(arr, static_cast<bool>(idx & 1u));
        for (; idx < 15u; ++idx)
            arr = pusher(arr, static_cast<int>(2 * idx));
    }
    std::cout << "\n";
    {
        size_t idx = 0u;
        for (; idx < 5u; ++idx)
        {
            double value;
            arr2 = reader(arr2, value);
            std::cout << value << "\n";
        }
        for (; idx < 10u; ++idx)
        {
            bool value;
            arr2 = reader(arr2, value);
            std::cout << std::boolalpha << value << "\n";
        }
        for (; idx < 15u; ++idx)
        {
            int value;
            arr2 = reader(arr2, value);
            std::cout << value << "\n";
        }
    }
    free(arr3);
    std::cout << "\n";
 
    return 0;
}
0
Комп_Оратор)
Эксперт по математике/физике
8719 / 4425 / 598
Регистрация: 04.12.2011
Сообщений: 13,256
Записей в блоге: 16
12.08.2019, 13:39 48
Цитата Сообщение от WxMaper Посмотреть сообщение
Идея и потребность в сохранении разных примитивных типов в одном контейнере вполне прозрачна
WxMaper, вам это кажется. Можно использовать различные структуры в виде элементов контейнера, но тогда потребуется ещё один уровень доступа. Индекс или итератор контейнера обеспечит доступ к типу - структура. Потом нужно будет достучаться до конкретного типа из этой структуры обратившись к нужному элементу.
Дело даже не в том, что итерация по такому бульдогу-с-носорогом, это грязный мазохизм. Тут всегда найдутся пару любителей такого рода занятий. Дело именно в том, что это не будет массив указанный в условии. Вы формулируете сломанную абстракцию вроде: солёного сахара, высоко-выпуклой ямы, ослепительно белой черноты... Типичные игры ума не тренированного предметным мышлением (имхо).
0
93 / 78 / 23
Регистрация: 19.10.2013
Сообщений: 480
12.08.2019, 13:45 49
Цитата Сообщение от IGPIGP Посмотреть сообщение
вам это кажется
С чего вдруг мне это кажется? Приведите контраргументы, почему я не прав?

Для решения каждой задачи требуется конкретный подход. И я уже привёл достаточно весомый аргумент, когда решение такой задачи конкретно таким образом действительно рационально и реализовать по другому просто либо НЕ ВОЗМОЖНО, либо НЕ ЦЕЛЕСООБРАЗНО.

Вот когда вы напишете свой алгоритм парсинга для JSON-объекта на С++ без использования контейнеров типа variant, тогда и поговорим какого ума это игры.
А до тех пор вы только бла-бла-блакаете о том, чего совершенно не понимаете.
0
Эксперт С++
8402 / 4078 / 891
Регистрация: 15.11.2014
Сообщений: 9,168
12.08.2019, 13:51 50
Цитата Сообщение от ValeryS Посмотреть сообщение
формально ли?
формально.

формально, массив чар хранит чары.
а по факту - объекты любого типа,
например.

Цитата Сообщение от ValeryS Посмотреть сообщение
а еще можно создать массив строк и вписывать туда значения,потом считывать их, чем не решение?
с бородатых времен для подобных целей использовался массив char.
и когда я пишу: "для подобных", то имею ввиду:
с целью обеспечить вариативность типа без привлечения динамической памяти.

C++
1
2
3
4
5
6
...
char buffer[variant::max_size];
...
 
new(buffer) T(params);
...
формально, buffer - массив элементов типа char
а по факту - storage для объектов любых типов,
чей sizeof(T) <= variant::max_size

и это - прекрасное решение.
вот только ты почему то думаешь:
Цитата Сообщение от ValeryS Посмотреть сообщение
нет нельзя
массив по своему определению ГОМОГЕННЫЙ, сиречь содержит одинаковые члены
то что ты хочешь это структура,класс, все что угодно только не массив
у тебя, похоже, ГОМОГЕНН головного мозга.

Цитата Сообщение от ValeryS Посмотреть сообщение
создать массив из разношерстных элементов нельзя
объекты union разношерстные по определению термина union
а значит массив из элементов union - так же разношерстный по определению термина union

Цитата Сообщение от ValeryS Посмотреть сообщение
кто-нибудь объяснит зачем?
почитай область применения для std::variant.
почитай область применения для std::any.

хотя лучше начни с области применения union.


а так, если вкратце:
например, к библиотечному виджету нужно прицепить какие то данные бизнес-логики.
в большинстве случаев для этого предоставляется void* user_data,
со всеми вытекающими последствиями.
а можно было бы использовать удобный и безопасный std::any

если захочешь сделать цивилизованный класс json,
тогда познаешь всю прелесть std::variant.

Кликните здесь для просмотра всего текста
json - это дерево, элементами которого могут быть: bool/int/double/string
а так же vector из всех выше перечисленных элементов.
и map <строка, все-выше-перечисленные-типы-включая-вектор>

итого:
C++
1
2
3
4
5
6
7
8
9
10
11
using single    
    = std::variant<bool,int,double,std::string>;
 
using vec    
    = std::vector<var>;
 
using map 
    = std::map<std::string, std::variant<single, vec>;
 
using node 
    = std::variant<single, vec, map>;

и мы получаем дерево, которое легко и непринужденно сможет
создавать/хранить иерархичные структуры любой сложности,
ака variant в языке питон:


json obj;
obj["hello"][0] = true;
obj["world"][0] = 333;
obj["ValeryS"] = "не тупи";

std::cout << obj << '\n';

0
Модератор
Эксперт по электронике
8471 / 6300 / 852
Регистрация: 14.02.2011
Сообщений: 21,848
12.08.2019, 14:12 51
Цитата Сообщение от hoggy Посмотреть сообщение
объекты union разношерстные по определению термина union
давно ли???
объект займет максимум
если
C++
1
2
3
4
5
union 
{
 char a;
 int b;
}
то размер будет равен размеру int, хотя загнали туда char
Цитата Сообщение от hoggy Посмотреть сообщение
формально.
так ответь
Цитата Сообщение от ValeryS Посмотреть сообщение
sizeof(arr[0])==sizeof(arr[5]) да или нет?
а sizeof(arr[0])==sizeof(double) да или нет?
а sizeof(arr[0])==sizeof(int) да или нет?
а sizeof(arr[0])==sizeof(bool) да или нет?
Добавлено через 1 минуту
Цитата Сообщение от hoggy Посмотреть сообщение
почитай область применения для std::variant.
почитай область применения для std::any.
хотя лучше начни с области применения union.
т.е объяснить не можешь? умное лицо и причастность к страшной тайне, кою разглашать нельзя
0
93 / 78 / 23
Регистрация: 19.10.2013
Сообщений: 480
12.08.2019, 14:56 52
Цитата Сообщение от IGPIGP Посмотреть сообщение
Типичные игры ума не тренированного предметным мышлением (имхо).
А давайте поможем IGPIGP натренировать его ум!
Название: images.jpg
Просмотров: 44

Размер: 7.6 Кб

Чтобы немного вас приземлить, сделаем выборку: отправляем запрос в гугл "json c++" и собираем популярные библиотеки.
1. Библиотека JSON for Modern C++. https://github.com/nlohmann/js... n.hpp#L871
Что тут у нас? Объединение union json_value. Не очень-то похоже на «бульдога-с-носорогом», но по вашей логике автору кажется, что ему надо было создавать такое объединение, да?

2. Библиотека RapidJSON. https://github.com/Tencent/rap... nt.h#L2017
Да что же такое! Повсюду
Цитата Сообщение от IGPIGP Посмотреть сообщение
грязный мазохизм
3. Библиотека taoJSON. https://github.com/taocpp/json... on.hpp#L26
Как же эти ребята заблуждаются...

От себя добавлю класс QJsonValue из библиотеки Qt, в выдаче его не было. https://code.woboq.org/qt5/qtb... h.html#165
Ой, что это? Снова объединение. Досада какая, надо товарищам из Digia сообщить, что им кажется, что они делают всё правильно. На самом деле у них получился «бульдог-с-носорогом».

json - это самое первое и очевидное, что приходит в голову.
Ещё могут быть xlsx-таблицы. И как так люди умудряются в одну колонку засовывать и текст, и числа... что за грязный мазохизм?
XML во всех его видах, когда параметр тега - всегда строка, но данные в нем могут быть любого зарегистрированного типа.
Данные из любой BD прилетают в буфер, буфер у нас что? Обратимся к моему любимому Qt: QSqlQuery::value. Снова треклятый variant. А если я хочу отправить что-то в БД? Ну конечно можно 10 раз объявить bindValue для разных типов, чем просто задействовать вариативный тип, который так или иначе будет преобразован в строку QSqlQuery::bindValue.
0
Комп_Оратор)
Эксперт по математике/физике
8719 / 4425 / 598
Регистрация: 04.12.2011
Сообщений: 13,256
Записей в блоге: 16
12.08.2019, 15:08 53
Цитата Сообщение от WxMaper Посмотреть сообщение
С чего вдруг мне это кажется? Приведите контраргументы, почему я не прав?
WxMaper, я их перечислил сразу всед за этой фразой. И то что вы их не восприняли меня не удивляет. Люди же не случайно пишут подобные вопросы. Вы такой не один. Вот тут аргументация.
Цитата Сообщение от IGPIGP Посмотреть сообщение
Можно использовать различные структуры в виде элементов контейнера, но тогда потребуется ещё один уровень доступа. Индекс или итератор контейнера обеспечит доступ к типу - структура. Потом нужно будет достучаться до конкретного типа из этой структуры обратившись к нужному элементу.
Дело даже не в том, что итерация по такому бульдогу-с-носорогом, это грязный мазохизм. Тут всегда найдутся пару любителей такого рода занятий. Дело именно в том, что это не будет массив указанный в условии. Вы формулируете сломанную абстракцию вроде: солёного сахара, высоко-выпуклой ямы, ослепительно белой черноты... Типичные игры ума не тренированного предметным мышлением (имхо).
и ещё:
Цитата Сообщение от WxMaper Посмотреть сообщение
Вот когда вы напишете свой алгоритм парсинга для JSON-объекта на С++ без использования контейнеров типа variant, тогда и поговорим какого ума это игры.
А кто сказал, что такие задачи решают люди с умением абстрагировать. Они и не умеют. Они пытаются притянуть готовые абстракции к предметной области и получаются логические монстры.
Вдобавок скажу еще о массивах. Кроме массива как массива однотипных данных по способу хранения (арифметика адресов) существует контракт - массив. Сущность поддерживающая оператор индексации.
В обоих случаях массив происходит от слова масса. Дело не в весе или сплошности монолита хранения. Дело в фундаментальном свойстве алгоритма, называемом массовостью. Именно массивы позволяют реализовать массовые проходы по группам объектов с применением алгоритмов. Их называют итерациями. И структуры, в частности, предназначены для борьбы со сложностью сопряженных массивов. Массив структур легче обрабатывать, начиная от инициализации и до самого освобождения. Таким образом те кто создают массивы бульдого-носорогов это люди не умеющие пользоваться ни статическим ни динамическим полиморфизмом. В результате когда вы будете итерировать, итерирующему блоку нужно будет знать, где заканчиваются целые, начинаются и заканчиваются дабл и т.п. Я не могу ни чего сделать, чтобы улучшить ситуацию и когда пользуюсь подобными миазмами, успокаиваю себя тем, что писать собственную библиотеку никто не даст. Но и не более.

Добавлено через 6 минут
Цитата Сообщение от WxMaper Посмотреть сообщение
А давайте поможем IGPIGP натренировать его ум!
Я и помогаю. Однако математики не любят физику. В отделе физика я насмотрелся вопросов от людей не имевших тренинга абстрагирования. Они хорошо работают с готовыми абстракциями, пишут страницы сложных уравнений... но не умеют создавать эти абстракции от предмета. Если хотите - прошу в раздел физика, - берите Перельмана или что-то ещё. И я сделаю всё что позволит время и ваше упорство.
0
93 / 78 / 23
Регистрация: 19.10.2013
Сообщений: 480
12.08.2019, 15:09 54
Цитата Сообщение от IGPIGP Посмотреть сообщение
И то что вы их не восприняли меня не удивляет
Не привык воспринимать бредятину как аргумент.
Не нравится то, как устроен объектно-ориентированный C++? Пишите на процедурном Cи или чем вы там грезите.
А притягивать за уши парадигму непонятно чего в раздел С++ не следует, а то вы выглядите тут дураком. При чем сами это понимаете:
Цитата Сообщение от IGPIGP Посмотреть сообщение
писать собственную библиотеку никто не даст
0
Комп_Оратор)
Эксперт по математике/физике
8719 / 4425 / 598
Регистрация: 04.12.2011
Сообщений: 13,256
Записей в блоге: 16
12.08.2019, 15:14 55
Цитата Сообщение от WxMaper Посмотреть сообщение
Не привык воспринимать бредятину как аргумент.
Это и есть способ хама выразить свою мысль. Я вашши тексты не оценивал и прошу воздержаться.
Цитата Сообщение от WxMaper Посмотреть сообщение
Не нравится то, как устроен объектно-ориентированный C++?
Опять оценки. Из них можно решить, что вы знаете как он устроен, а мне он, стало быть (якобы) не нравится. Опять жлобство. Низкопробное.
Цитата Сообщение от WxMaper Посмотреть сообщение
А притягивать за уши парадигму непонятно чего в раздел С++ не следует, а то вы выглядите тут дураком. При чем сами это понимаете:
Не развесили но и не удивили. Счастливо оставаться умником. Надежд у вас ни каких.
0
93 / 78 / 23
Регистрация: 19.10.2013
Сообщений: 480
12.08.2019, 15:36 56
Цитата Сообщение от IGPIGP Посмотреть сообщение
Это и есть способ хама выразить свою мысль
Я свои мысли выражаю в правильных местах, в отличие от вас.
Если бы к вам в дом пришли инаковерующие и начали впаривать свою религию, как бы вы к этому отнеслись? Угостили бы их чаем и выслушали? Сомневаюсь.
Если бы сносить стены вместо строителей к вам в дом пришли археологи с кисточками, вы бы впустили их?

Я еще раз выделю для вас жирным это заветное слово: ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ С++. И когда разработчики создают объекты для решения своих задач - это не
Цитата Сообщение от IGPIGP Посмотреть сообщение
грязный мазохизм
- это использование парадигмы программирования. Это корректный способ для достижения цели в рамках использования конкретного инструмента - языка программирования С++.
Я выбрал для себя программирование на С++ по ряду причин. И тут приходите вы (а вы, собственно, кто?) и говорите, что так как программируют на С++ - это не правильно.
Притягиваете сюда какое-то предметное мышление. С++ по своему определению НЕ ЯВЛЯЕТСЯ предметно-ориентированным инструментом.

Цитата Сообщение от IGPIGP Посмотреть сообщение
Из них можно решить, что вы знаете как он устроен
Из них можно решить только то, что я и ваши работодатели, которые не дают вам писать собственные библиотеки, знаем как использовать инструмент эффективно, снова в отличие от вас.

Цитата Сообщение от IGPIGP Посмотреть сообщение
Надежд у вас ни каких
Зато у вас целый вал!
Надеюсь вы осознаете, что выслушивать философствования вида
Цитата Сообщение от IGPIGP Посмотреть сообщение
кто сказал, что такие задачи решают люди с умением абстрагировать
от непонятно кого на техническом ресурсе - занятие не из приятных. Это как купить билет на выставку картин, а прийти по нему на метал-концерт группы Rammstein.

Цитата Сообщение от IGPIGP Посмотреть сообщение
Счастливо оставаться умником
Научитесь пользоваться инструментом правильно, а потом уже выражайте своё мнение.
Только удостоверьтесь, что ваше мнение не противоречит хотя бы базовым принципам работы с инструментом.
А то так и будете про предметность рассказывать в разделе С++.
0
Эксперт С++
8402 / 4078 / 891
Регистрация: 15.11.2014
Сообщений: 9,168
12.08.2019, 15:39 57
Цитата Сообщение от ValeryS Посмотреть сообщение
давно ли???
всегда.

Цитата Сообщение от ValeryS Посмотреть сообщение
объект займет максимум
и чо?

вот к чему ты это написал?

я тебе уже не в первый раз такой вопрос задаю.
такое впечатление, что ты как бот рандомно генерируешь ответы.

Цитата Сообщение от ValeryS Посмотреть сообщение
так ответь
размер элемента массива статичен.
и?
смысл вообще у твоего вопроса какой?

Цитата Сообщение от ValeryS Посмотреть сообщение
т.е объяснить не можешь?
откуда ты взял своё "т.е" ?

вкратце я итак расписал.
если что-то не понятно - задавай конкретные вопросы.

никто здесь не будет тебе расжёвывать азы языка.
0
Комп_Оратор)
Эксперт по математике/физике
8719 / 4425 / 598
Регистрация: 04.12.2011
Сообщений: 13,256
Записей в блоге: 16
12.08.2019, 16:33 58
WxMaper,
0
Модератор
Эксперт по электронике
8471 / 6300 / 852
Регистрация: 14.02.2011
Сообщений: 21,848
12.08.2019, 16:45 59
Цитата Сообщение от hoggy Посмотреть сообщение
всегда.
что всегда?
Цитата Сообщение от hoggy Посмотреть сообщение
объекты union разношерстные по определению термина union
я правильно понял что размер объекта union может варьироваться сам как хочет?
Цитата Сообщение от hoggy Посмотреть сообщение
размер элемента массива статичен.
и?
дальше ? там 4 вопроса
0
Don't worry, be happy
17143 / 10026 / 1933
Регистрация: 27.09.2012
Сообщений: 24,954
Записей в блоге: 1
12.08.2019, 18:11 60
Цитата Сообщение от SomniPhobia Посмотреть сообщение
До C++17
C++
1
2
//еще
auto t = std::make_tuple(5, true, 0.14)
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.08.2019, 18:11

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Получить массив, где будут храниться индексы строк матрицы, в которых есть равные элементы
2. Дан прямоугольный массив A. Получить линейный массив B, в котором будут храниться номера тех...

Создать класс, в котором информация будет храниться в хеше.
А подскажите еще, мне нужно создать класс , в котором в хеше будет храниться информация, ее...

Комментарии. Создать модуль, в котором будет храниться процедура создания картинки
Привет всем! помогите с комментариями к программе пожалуйста... Создайте модуль, в котором будет...

дан массив целых чисел в котором храниться 20 тысяч элементов
дан массив целых чисел в котором храниться 20 тысяч элементов.Найти в массиве первый минимальный...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Опции темы

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