Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/34: Рейтинг темы: голосов - 34, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 03.01.2020
Сообщений: 16

Создание динамического массива объектов разных классов

24.05.2020, 22:31. Показов 6675. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть класс Car и 3 класса Buss, Truck, Passenger которые наследуют класс Car.

Как создать динамический массив объектов разных классов?

Если нельзя, то как создать динамический массив объектов класса?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.05.2020, 22:31
Ответы с готовыми решениями:

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

Создание динамического массива объектов
Выполняю лабораторную работу в Visual Studio 2012. Вероятно, учебник, как и лабы, устарел. Идёт пункт в лабе: В файле group.h...

Создание динамического массива объектов «Поезд» и работа с ним
Класс, содержащий следующие свойства:  название пункта назначения;  номер поезда  количество мест;  количество...

7
 Аватар для VLaDoS_2001a
319 / 216 / 114
Регистрация: 14.05.2020
Сообщений: 890
24.05.2020, 22:45
Цитата Сообщение от Daniil1254 Посмотреть сообщение
Как создать динамический массив объектов разных классов?
C++
1
2
3
4
Car *arr = new Car[512]; delete[] arr; arr = nullptr;
Buss*arr = new Buss[512]; delete[] arr; arr = nullptr;
Truck*arr =new Truck[512]; delete[] arr; arr = nullptr;
shared_ptr<Car[]>arr(new Car[512]);
0
Нарушитель
10226 / 5657 / 1258
Регистрация: 12.03.2015
Сообщений: 26,193
24.05.2020, 23:09
Цитата Сообщение от Daniil1254 Посмотреть сообщение
Если нельзя, то как создать динамический массив объектов класса?
Чо нельзя-то? В этом и есть смысол ООП. Объекты (экземпляры) - это указатели, ёмаё. Ну создай массив (или вектор) из экземпляров класса, который базовый для всей иерархии. На выходе получишь, 1хрен, кусок памяти, выделенной под указатели, которые теперь можно инициализировать адресами создаваемых экземпляров РАЗНЫХ классов.
0
0 / 0 / 0
Регистрация: 03.01.2020
Сообщений: 16
24.05.2020, 23:34  [ТС]
Ошибки:
Кликните здесь для просмотра всего текста
c:\users\admin\desktop\институт\программ ирование\лабы 2020\лаба5\main.cpp(120): error C2371: c: переопределение; различные базовые типы
1> c:\users\admin\desktop\институт\программ ирование\лабы 2020\лаба5\main.cpp(119): см. объявление "c"
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(121): error C2371: c: переопределение; различные базовые типы
1> c:\users\admin\desktop\институт\программ ирование\лабы 2020\лаба5\main.cpp(119): см. объявление "c"
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(122): error C2040: c: "std::shared_ptr<Car []>" отличается по уровням косвенного обращения от "Car *"
========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========


C++
1
2
3
4
5
    int maxSize = 100;
    Car         *c = new Car[maxSize];
    Bus         *c = new Bus[maxSize];
    Truck       *c = new Truck[maxSize];
    shared_ptr<Car[]>c(new Car[maxSize]);
Не понятно что делает shared_ptr<Car[]>c(new Car[maxSize].
0
 Аватар для VLaDoS_2001a
319 / 216 / 114
Регистрация: 14.05.2020
Сообщений: 890
24.05.2020, 23:55
Daniil1254, ну как сказать? Указатель *c переименуйте например *a,*b,*c нельзя так как у Вас,
std::shared_ptr<Car[]>c(new Car[maxSize]); это умный указатель и у него тоже измените имя на любое другое (чтобы не повторялись в одной программе!!!!) И нужно #include<memory>
0
0 / 0 / 0
Регистрация: 03.01.2020
Сообщений: 16
25.05.2020, 00:15  [ТС]
Все равно не понятно, что надо сделать. Вот у меня есть массив "с" с размером "maxSize" и я меняю у объекта тип:
c[0].SetType("Bus");
Как я понял умный указатель каким-то образом узнает какой класс присвоить c[0]

C++
1
2
3
4
5
    int maxSize = 100;
    Car         *cr = new Car[maxSize];
    Bus         *b = new Bus[maxSize];
    Truck       *t = new Truck[maxSize];
    shared_ptr<Car[]>c(new Car[maxSize]);
Но все равно ошибки:
Кликните здесь для просмотра всего текста
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(173): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(173): error C2228: выражение слева от ".SetType" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(175): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(175): error C2228: выражение слева от ".SetMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(178): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(178): error C2228: выражение слева от ".SetPower" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(181): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(181): error C2228: выражение слева от ".SetTypeBody" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(184): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(184): error C2228: выражение слева от ".SetTransmission" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(187): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(187): error C2228: выражение слева от ".SetAge" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(190): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(190): error C2228: выражение слева от ".SetCountSpeed" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(197): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(197): error C2228: выражение слева от ".AddDriver" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(229): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(229): error C2228: выражение слева от ".ReturnMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(235): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(235): error C2228: выражение слева от ".ReturnMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(237): error C2664: "void DataВebugger(std::string,Car *,int)": невозможно преобразовать аргумент 2 из "std::shared_ptr<Car []>" в "Car *"
1> Для выполнения данного преобразования нет доступного оператора преобразования, определенного пользователем, или вызов оператора невозможен
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(262): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(262): error C2228: выражение слева от ".SetType" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(275): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(275): error C2228: выражение слева от ".SetMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(280): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(280): error C2228: выражение слева от ".SetPower" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(285): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(285): error C2228: выражение слева от ".SetTypeBody" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(290): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(290): error C2228: выражение слева от ".SetTransmission" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(295): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(295): error C2228: выражение слева от ".SetAge" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(300): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(300): error C2228: выражение слева от ".SetCountSpeed" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(314): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(314): error C2228: выражение слева от ".ReturnMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(329): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(329): error C2228: выражение слева от ".ReturnMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(331): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(331): error C2228: выражение слева от ".PrintCar" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(341): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(341): error C2228: выражение слева от ".ReturnMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(367): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(367): error C2228: выражение слева от ".ReturnMark" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(368): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(368): error C2228: выражение слева от ".ReturnPower" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(369): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(369): error C2228: выражение слева от ".ReturnTypeBody" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(370): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(370): error C2228: выражение слева от ".ReturnTransmission" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(371): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(371): error C2228: выражение слева от ".ReturnAge" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(372): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(372): error C2228: выражение слева от ".ReturnCountSpeed" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(373): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(373): error C2228: выражение слева от ".ReturnCount" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(375): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(375): error C2228: выражение слева от ".ReturnCount" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(377): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(377): error C2228: выражение слева от ".ReturnDriver" должно представлять класс, структуру или объединение
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(378): error C2676: бинарный "[": "std::shared_ptr<Car []>" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
1>c:\users\admin\desktop\институт\програ ммирование\лабы 2020\лаба5\main.cpp(378): error C2228: выражение слева от ".ReturnDriver" должно представлять класс, структуру или объединение
========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
25.05.2020, 00:24
Daniil1254, тип контейнера - указатель на базовый класс. Рекомендую вектор. Потом i-тый элемент заселяется по принципу:
C++
1
cars[i]=new Bas;
Если указатели не мудрые, то мудрым придётся быть самому, не забывать делитить указатели когда объект не нужен. При уничтожении массива (перед выходом из области) - проделитить весь.
0
Нарушитель
10226 / 5657 / 1258
Регистрация: 12.03.2015
Сообщений: 26,193
25.05.2020, 01:44
Лучший ответ Сообщение было отмечено Daniil1254 как решение

Решение

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 <stdio.h>
 
using namespace std;
 
class Car
{
  private:
    string fname;
  public: 
    Car(string aname) { this->fname = aname; }
    string GetName(void) { return fname; }
    void SetName(string ANew) { fname = ANew; }
    void Print(void) { printf(" # %s\n", fname.c_str()); }
};
 
class Bus : public Car
{
  public: 
    Bus(string aname) : Car(aname) {};
};
 
class Truck : public Car
{
  public: 
    Truck(string aname) : Car(aname) {};
};
 
class Passenger : public Car
{
  public: 
    Passenger(string aname) : Car(aname) {};
};
 
 
Car** create_array(unsigned size)
{
  const int maxSize = size;
  Car** cars = new Car*[maxSize]; // не делай так, юзай списки
    
  while (size--) 
    switch (size % 4)
    {
      case 0:  cars[size] = new Car("Запорожец");  break;
      case 1:  cars[size] = new Bus("Маршрутка Газель"); break;
      case 2:  cars[size] = new Truck("Камаз"); break;
      case 3:  cars[size] = new Passenger("Водятел");break;
    }
    
  return cars;  
}
 
void print_array(Car** cars, unsigned size)
{
  while (size--) 
    cars[size]->Print();//, cars++;
}
 
void free_array(Car** cars, unsigned size)
{
  while (size--)
    delete cars[size];
  delete []cars;
}
 
int main()
{
  const unsigned size = 4;
  Car** arr = create_array(size);
  print_array(arr, size);
  free_array(arr, size);
  return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.05.2020, 01:44
Помогаю со студенческими работами здесь

Разработать иерархию классов, демонстрирующее работу с коллекцией объектов разных классов
Задание: Разработать в соответствии с индивидуальным заданием иерархию классов и приложение, демонстрирующее работу с коллекцией объектов...

Взаимодействие объектов разных классов
Я или туплю или чего-то не понимаю\не до понимаю. Вопрос в самом коде. class Player { int health; int damage; public: ...

Создание массива из разных объектов
Добрый день друзья. Столкнулся с проблемой и так и не нашел как решить. Ниже код в котором я реализую 2 класса (Bear (Наследник...

Создание массива экземпляров разных классов
Здравствуйте! Возникла необходимость создать массив с экземплярами разных классов, так как ~60 строчек похожих по содержанию корректировать...

Массив объектов разных производных классов
Задача такая: базовый класс - фигура, производные классы - круг, треугольник и т.п. Пользователь выбирает, какие фигуры будут на экране и...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru