Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.78/65: Рейтинг темы: голосов - 65, средняя оценка - 4.78
4 / 3 / 1
Регистрация: 08.08.2019
Сообщений: 238

Что возвращает конструктор?

31.10.2019, 23:35. Показов 13172. Ответов 69
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что возвращает конструктор?
Читал что если написать myclass() ; (myclass это созданный класс), то создаётся безымянный объект, но как-то странно звучит, если это правда можно подробнее?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.10.2019, 23:35
Ответы с готовыми решениями:

Что возвращает конструктор?
Здравствуйте! Я не могу понять, как происходит присвоение вот здесь: object obj = object(10) object - класс, написанный программистом....

Конструктор Shader() возвращает null
Камрады, разве следующий код должен вернуть null ? (Unity 5.6) Shader sh = new Shader();

Определить конструктор без параметров, конструктор с одним параметром, конструктор с двумя параметрами, деструктор
Создать класс «матрица». Данный класс должен содержать элементы типа int, определяющие число строк, столбцов и состояние ошибки. Определить...

69
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 16:13
Лучший ответ Сообщение было отмечено Vanconts как решение

Решение

Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Vanconts Посмотреть сообщение
вот именно из-за такой конструкции я и написал пост. Что в даном случае делается в myclass()?
C++
1
myclass mkl = myclass();
Это сводится к созданию объекта mkl конструктором по умолчанию. Не копирования ни присваивания тут нет. Это вот так можно проверить:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct Struct
{
    Struct(){cout<<"\nStruct()\n";}
    Struct &operator=(const Struct &rhs)
    {
        cout<<"\nStruct &operator(const Struct &rhs)\n";
        return *this;
    }
    Struct(const Struct &rhs){cout<<"\n Struct(const Struct &rhs)\n";}
};
int main()
{
 Struct st=Struct();
//Struct st;
Существуют различные формы инициализации. В данном случае нет разницы если просто написать:
C++
1
Struct st;
перенесите коммент вверх и разницы не будет)

Добавлено через 13 минут
Vanconts, синтаксис и смысл связаны достаточно непрямо. Всё придёт с практикой. Незачем силою мысли пытаться понять, что возвращает MyClass в таком вот выражении:
C++
1
MyClass *pmyClass=new MyClass();
он тут не возвращать приставлен. Нужно просто знать и всё.
0
4 / 3 / 1
Регистрация: 08.08.2019
Сообщений: 238
01.11.2019, 18:48  [ТС]
IGPIGP, странно почему не срабатывает оператор ,если просто написать
C++
1
Struct();
то срабаывает конструктор ,тоесть насколько я понимаю создается анонимный объект как описывали раньше.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,308
01.11.2019, 20:18
Лучший ответ Сообщение было отмечено IGPIGP как решение

Решение

Цитата Сообщение от IGPIGP Посмотреть сообщение
TheCalligrapher, я не понял этой фразы. TheCalligrapher, поясните, пожалуйста, что вы имеете ввиду. С моей точки зрения тут имеется ввиду применение конструктора по умолчанию (кроме кода создания объекта).
"Иметься в ввиду" тут может много чего. В этом-то вся суть: в языке С++ в принципе нет средств прямого вызова конструктора. Конструктор невозможно вызвать напрямую, как обычную функцию. Конструктор всегда вызывается неявно компилятором в рамках существенно более общего процесса, называемого инициализацией. Инициализация может использовать конструкторы, а может и не использовать.

Так что максимум, что вам дозволено - это просто "иметь в виду" конструктор. А уже вызывать его будете не вы, а компилятор за вас, откуда-то из недр процесса инициализации.

Цитата Сообщение от IGPIGP Посмотреть сообщение
Например:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
using namespace std;
 
struct NoDefault
{
    NoDefault()=delete;
};
 
int main()
{
NoDefault();//...\main.cpp|2720|error: use of deleted function 'NoDefault::NoDefault()'|
    return 0;
}
В данном примере вы явно объявили конструктор по умолчанию. В такой ситуации инициализатор вида () должен пользоваться именно вашим конструктором по умолчанию. Именно это и иллюстрирует ваш пример.

В классе S, который я приводил в своем примере ранее, конструктор по умолчанию тоже есть (хотя бы на концептуальном уровне). Однако он объявлен не мной, а неявно компилятором. Это принципиально меняет дело. В такой ситуации инициализатор вида () не будет пользоваться этим конструктором по умолчанию, а будет вместо этого выполнять value-initialization посторонними (бесконструкторными) методами.

Как я уже говорил выше, все зависит от специфики инициализируемого типа и формата использованного инициализатора.

Цитата Сообщение от IGPIGP Посмотреть сообщение
Вот тут ТС имел ввиду непосредственно, что myclass это созданный класс . То есть, это имя типа.Но даже и без данного пояснения, выражение типа myclass() может иметь какое-то отношение к вызову конструктора. (имхо).
"Иметь отношение" с точки зрения полной картины - конечно может. Я с этим не спорю. Но непосредственного прямого отношения не имеет, в том смысле что это не буквально "вызов конструктора", как его любят назвать начинающие программисты. В С++, еще раз, нет синтаксиса для прямого "вызова конструктора".

(Конечно, делегирующие конструкторы в С++11 уже вплотную подошли к этому. И, возможно, делегацию конструктора уже можно смело назвать прямым "вызовом конструктора". Но это совсем другая тема.)

Цитата Сообщение от IGPIGP Посмотреть сообщение
А мне кажется правда в том, что в зависимости от ситуации оно возвращается или не возвращается. Как говорят англосаксы "Если оно плавает как утка, крякает как утка, и выглядит как вызов конструктора, возвращающий значение, то это она снесла яйцо ".
В этом во многом и заключается корень проблемы.

Многие со времен С привыкли к тому что кря() - это синтаксис вызова функции, именно и только вызова функции, и забетонировали в своих головах эту интерпретацию. Теперь всегда, когда они видят кря(), они пытаются всеми правдами и неправдами рассматривать только интерпретации, в которых кря() фигурирует именно и только как вызов функции. И даже то, что в myclass() слева от () стоит совсем не имя функции, а имя типа, их надолго не останавливает: сказав "Хмм..." и немного подумав, они вдруг восклицают "Ага! Так это ж имя конструктора!".

Тот факт, что у конструкторов в принципе нет имен ("11.4.4.1 Constructors 1 [...] Constructors do not have names. [...]") их нисколько не смущает.

На самом деле же дела обстоят совсем по-другому. В С++ с начала времен существует принципиально новый синтаксис T(...) с именем типа T перед (...), который хоть внешне и выглядит, как вызов функции и даже иногда покрякивает, как вызов функции, но на самом деле не является вызовом функции и, формально, никакого отношения к вызову функции не имеет. Это синтаксис преобразования типа в функциональной нотации.

Да, преобразование типа в С++ может вызывать конструкторы. А может вызывать и перегруженные операторы приведения типа. А может и вообще ничего не вызывать. Конструкторы во всей этой смеси никак не выделяются среди остальных возможных вариантов поведения.
6
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 20:43
TheCalligrapher, спасибо) Очень круто и полно. Значит имя типа и скобки таки могут иметь отношение к вызову конструктора. Ну и как всё в плюсах - кроме нюансов и исключений. Но это не принципиально. Главное вы рассказали о принципиальных отличиях вызова конструктора и выражения Type_name(), как и о отличиях вызова функций и вызовов конструкторов. Тут есть нюансы которых я не знал. Спасибо, ещё раз.
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
Да, преобразование типа в С++ может вызывать конструкторы.
Но любое выражение преобразующее тип начиная от операторов и конструктора с одним параметром, а так же передача/возврат из функции, operator=() etc., оперируют значением, которое будет преобразовано. Что же преобразует кря() ? Там же нет параметра. И никто не может заставить конструктор вернуть (условно говоря "вернуть", - то есть ввернуть в место вызова как лампочку ) значение иного типа. Если нет оператора преобразования и выражения которое вынуждает его без возможных ограничений. То есть, не понимаю как конструктор по умолчанию преобразует.
А объект создать вызовом можно. Функтор на временном объекте (или любое публичное поле) можно вызвать. Functor_T()(/*params if any*/);
То есть, где-то по сути и духу я говорил нечто похожее о магии, контексте и логике чудес. Но языком менее строгим и точным.
Vanconts, вот видите как черепахи падают? Они не бухаются на проггера. Они падают на противоположную сторону грабель. Это называется промежуточным уровнем коссвенности в сочетании с неявным вызовом (тяжких телесных). А утка это то приспособление, куда проггер будет ходить пока не выздоровеет. Тут без практики никак. Продолжая зоо-аналогии в нашем волшебном лесу: - Медведем можно стать не только поцеловав принцессу. Можно достичь мощи и мохнатости насобирав нужное количество шишек. Берегите голову, собирайте осторожно и постепенно. Много маленьких шишек легче заживают чем одна большая. Это я вам как практик говорю.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
01.11.2019, 20:54
TheCalligrapher,
Если создать объект без вызова конструктора, то как тогда этим объектом пользоваться? Ведь его лайфтайм не начался (в случае объектов для начала лайфтайма вроде как должен быть вызван конструктор)
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 20:57
Цитата Сообщение от Undisputed Посмотреть сообщение
Если создать объект без вызова конструктора, то как тогда этим объектом пользоваться?
Нельзя без вызова. Он будет вызван неявно. Особенно, если сгенерирован неявно.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
01.11.2019, 21:16
IGPIGP,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//g++  5.4.0
 
#include <iostream>
 
struct a
{
int n;
//a(){std::cout<<"construct";}
void method(){std::cout<<n;}
~a(){std::cout <<"destruct";}
};
 
int main()
{
    a obj{1};
    obj.method();
}
https://rextester.com/SNJUV45390

Ещё как то раз спрашивал тут, определено ли поведение в том случае когда память под структуру/класс выделаем через маллок, и кастим результат маллок к типу класса/структуры. В этом случае конструктор так же не вызывается, но тем не менее такой код часто используется особенно для служебных структур которые нужны для работы с сокетами. Но тогда конкретного ответа вроде не получил

Добавлено через 2 минуты
Первый пример это вроде агрегатный тип, и так походу можно делать
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 21:24
Цитата Сообщение от Undisputed Посмотреть сообщение
a obj{1};
Это вызовет конструктор сгенерённый неявно. uniform initialization тут не при чем. Вот если бы вы дабл передали юниформ заблокировал бы, а в данном разе, это всё едино что в скобках передать.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
01.11.2019, 21:25
IGPIGP,
А чем отличается конструктор сгенеренный по умолчанию от такого же но записанного явно? Если определить конструктор без параметров явно, то код выше не компилируется так как это уже не агрегатный тип. Как проверить ваши утверждения?

А насчёт структур для работы с сокетами, они POD-ы, для них лайфтайм считается по другому принципу. Память выделили - получили лайфтайм, память освободили - получили финиш лайфтайма. И опять никаких конструкторов нет.
https://stackoverflow.com/ques... ey-special
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 21:27
Цитата Сообщение от Undisputed Посмотреть сообщение
В этом случае конструктор так же не вызывается
Напишите его явно и забейте в него cout. Поскольку он у вас неявен то и не видно его. Правило нуля упрощает жизнь программисту, но не компилятору. Он будет работать.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,308
01.11.2019, 21:28
Цитата Сообщение от Undisputed Посмотреть сообщение
Если создать объект без вызова конструктора, то как тогда этим объектом пользоваться? Ведь его лайфтайм не начался (в случае объектов для начала лайфтайма вроде как должен быть вызван конструктор)
Ничего подобного. Здесь у вас наблюдается все та же путаница между вызовом конструктора и инициализацией.

Лайфтайм объекта начинается тогда, когда успешно закончилась его инициализация (http://eel.is/c++draft/basic.life#1.2). А участвует в этой инициализации "вызов конструктора" или не участвует - вопрос совершенно побочный.

Еще раз: о каких "вызовах конструкторов" может вообще идти речь, если в системе типов языка С++ присутствует огромное количество не-класс типов, у которых в принципе не может быть никаких "конструкторов". О каком еще "вызове конструктора" может идти речь для объектов типа, например, int?
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 21:31
Цитата Сообщение от Undisputed Посмотреть сообщение
IGPIGP,
А чем отличается конструктор сгенеренный по умолчанию от такого же но записанного явно? Если определить конструктор без параметров явно, то код выше не компилируется так как это уже не агрегатный тип. Как проверить ваши утверждения?
Я исправил. "По умолчанию" тут не подойдёт. Универсальная инициализация это другое. Но конструктор вызывается (хоть и не видно его). То что
Цитата Сообщение от Undisputed Посмотреть сообщение
код выше не компилируется
это нормально. Я имел ввиду - напишите конструктор для данного вызова. Пусть что бы дефолты сыты и конверты целы - с одним параметром по умолчанию. Сможете и {} и {123}.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,308
01.11.2019, 21:38
Цитата Сообщение от IGPIGP Посмотреть сообщение
Цитата Сообщение от Undisputed Посмотреть сообщение
#include <iostream>
struct a
{
int n;
//a(){std::cout<<"construct";}
void method(){std::cout<<n;}
~a(){std::cout <<"destruct";}
};
int main()
{
* * a obj{1};
* * obj.method();
}
Это вызовет конструктор сгенерённый неявно. uniform initialization тут не при чем. Вот если бы вы дабл передали юниформ заблокировал бы, а в данном разе, это всё едино что в скобках передать.
Совершенно не верно. У a нет такого конструктора. Откуда он возьмется?

В данном случае мы имеем дело с агрегатом и с list-инициализацией, которая выливается в классическую агрегатную инициализацию. Никаких конструкторов тут не замешано вообще.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
01.11.2019, 21:39
IGPIGP,
Так дело в том что если записать конструктор явно и забить в него cout, то не компилируется так как идёт Попытка вызвать конструктор T(int), которого нет.

TheCalligrapher,
Я имел ввиду объекты классового типа, а не все доступные типы
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 21:40
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
О каком еще "вызове конструктора" может идти речь для объектов типа, например, int?
Дык мы же не о встроенных типах говорим. Вот к тому коду где я показал строчки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
struct Struct
{
    int a;
    Struct(int a_=123):a(a_){ cout<<"\nStruct()\n";}
    Struct &operator=(const Struct &rhs)
    {
        a=rhs.a;
        cout<<"\nStruct &operator(const Struct &rhs)\n";
        return *this;
    }
    Struct(const Struct &rhs):a(rhs.a){cout<<"\n Struct(const Struct &rhs)\n";}
    int operator()(){cout<<"\nint operator()()\n"; return a;}
 
};
int main()
{
Struct s{234};//печатает Struct()
код конструктора тут вызван и выполенен.
А вот тут нет:
C++
1
2
cout<<'\n'<<sizeof(Struct);//4
 cout<<'\n'<<sizeof(Struct());//1 //////// ))))
Ну то есть, компилятор сам знает когда вызывать. Юникорны согласно кивают, эльфы весело кружат)

Добавлено через 1 минуту
Цитата Сообщение от Undisputed Посмотреть сообщение
Так дело в том что если записать конструктор явно и забить в него cout, то не компилируется так как идёт Попытка вызвать конструктор T(int), которого нет.
У меня компилируется. Покажите код.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,308
01.11.2019, 21:44
Цитата Сообщение от IGPIGP Посмотреть сообщение
Напишите его явно и забейте в него cout. Поскольку он у вас неявен то и не видно его.
Совершенно не верно. Если вы напишете его явно, то он, разумеется, появится, так как вы написали его явно.

Никакой неявной генерации такого конструктора с параметром типа int в С++ нет и никогда не было. Язык С++ умеет неявно генерировать только умолчательные и копирующие/перемещающие конструкторы. Больше никаких конструкторов С++ неявно генерировать никогда не будет.

Цитата Сообщение от Undisputed Посмотреть сообщение
Я имел ввиду объекты классового типа, а не все доступные типы
Я уже приводил примеры того, как у объекта класс-типа делается инициализация без участия конструктора

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
struct S { int x, y; };
 
int main()
{
  S a;
  // Инициализация неявно сгенерировнным конструктором по умолчанию. 
  // Он фактически ничего не делает. В полях a.x и a.y - мусор
 
  S s{}; 
  assert(s.x == 0 && s.y == 0); // <-- неявный конструктор по умолчанию такого не делает
  // В этом случае была выполнена value-инициализация без участия конструктора
 
  S t{ 1, 2 }; // такого конструктора у класса S нет вообще
  assert(t.x == 1 && t.y == 2); 
  // В этом случае была выполнена агрегатная инициализация без участия конструктора
}
1
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
01.11.2019, 21:46
IGPIGP, IGPIGP,
Выше ведь я привёл код, на rextester. Можете раскомментировать конструктор и скомпилировать
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
01.11.2019, 21:48
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
Никакой неявной генерации такого конструктора с параметром типа int в С++ нет и никогда не было. Язык С++ умеет неявно генерировать только умолчательные и копирующие/перемещающие конструкторы. Больше ничего.
Ну что же. Я вам верю. Хотя доказать такое утверждение не тривиальная задача. Я подозреваю, что генерируемый по умолчанию конструктор это код который является основой и так или иначе он будет выполнен.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
01.11.2019, 21:49
TheCalligrapher,
А, я понял.
Есть инициализация и она может быть разной.
Если скажем конструктор тоже является частью инициализации и если он бросит исключение, то лайфтайм не начнётся потому что процесс инициализации не был успешным, а не потому что конструктор не отработал до конца
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,308
01.11.2019, 21:53
Цитата Сообщение от IGPIGP Посмотреть сообщение
Ну что же. Я вам верю. Хотя доказать такое утверждение не тривиальная задача. Я подозреваю, что генерируемый по умолчанию конструктор это код который является основой и так или иначе он будет выполнен.
Если вы считаете, что язык С++ умеет генерировать и другие конструкторы, то доказывать это - ссылками на стандарт языка - придется именно вам.

Мне же ничего доказывать не нужно: я лишь излагаю стандартную спецификацию процесса инициализации.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.11.2019, 21:53

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

Определить, что за параметр передается функции и что она возвращает
Добрый день! помогите пожалуста понять что за параметр передается функции LS_GetReaderSn и что эта функция возвращает. ...

Что означает запись в скобках и что возвращает return
Всем привет! Начал читать книгу BecomeAnXcoder и тут появился вопрос. В пример приведен такой код circleArea(float theRadius) //(1) ...

Что тут метод, а что конструктор?
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApp77 { class...

Что делает конструктор?
Я очень плохо понял вобще. Он вроде помогает создать в памяти место для переменных обьявленых в классе?? В каких слуаях его лучше...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ начало и оглавление - Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru