Форум программистов, компьютерный форум, киберфорум
-=ЮрА=-
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  

using namespace std и std:: надоело смотреть!

Запись от -=ЮрА=- размещена 06.04.2012 в 22:30
Показов 18832 Комментарии 159
Метки c++

Наболело поэтому несколько эмоционально:
Кто нибудь понимает зачем используют using namespace std; и как глупо для каждой стандартной функции STD писать std:: - нееет???Ну тогда вам сюда в дискуссию!
Итак зачем вообще используют конструкцию using namespace std - ответ прост этим мы явно указываем компилятору что хотим использовать в своём коде функции из пространства имён STD
Тогда у многих встаёт вопрос: что означает конструкция std:: это явное указание области видимости? Ответ тоже прост : при такой записи компилятор также обращается к объекту(чаще всего это функция) следующего за вторым двоеточием. Итак что при использовании using namespace что при использовании std::мы всего лишь даём понять компилятору к какой функции и из какого пространства имён обращаться. А теперь у меня вопрос к вам, читающим всё это - Что это за инкубатор с std::, кто-то когда то по видимому безрукий ляпнул : "да будет std::, так правильно" и всё - понеслась. Каждый пытается обезопасить себя от какого-то потенциально опасного перекрытия пространства имён и т.д, хотя никакой опасности нет вообще.
Всем скептиками предлагаю код ниже
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
namespace my
{
    template <class T>
    T cout(T param)
    {
        return param;
    }
}
 
int main()
{
    cout<<"Test\n";
    cout<<my::cout("Test\n");
    system("pause");
    return 0;
}
Как видим ничего не случилось что в своей программе использую std::cout и my::cout
Вывод напрашивается сам собой - накой вообще везде лепить std:: если даже без явного указания области видимости ничего страшного не произойдёт даже при использовании другого namespace-а
Код с двоеточиями, нечитабелен, абсолютно такой же по функционалу что и код без std::. И ещё один момент - кто нибудь в MSDN-е встречал код с std:: именно официальный код???Ну хорошо из 100 кодов возможно пара содержит std::, остальная же часть кода дана с using namespace std; как такая которая позволяет сокращать код (прелагаю посчитать на сколько символов увеличивает std:: в каждой строчке длинну кода).

Таким образом конструкция using namespace std целесообразней в плане сокращения длинны кода, нежели std::. Все гипотетичекие проблеммы перекрёстного использования пространств имён с одинаковыми функциями надуманы и обусловлены кривостью чьих-то рук, либо неправильным их расположением(я о руках) не из того места.

Добавлено мной 31.07.2012
Тема оказалась душетрепещущей - предлагаю для ускорения понимания перепрыгивать с 1-й страницы сюда https://www.cyberforum.ru/blog... omment3371
и сюда https://www.cyberforum.ru/blog... omment3378
Также привожу выжимку из Шильдта
using namespace std;
Эта инструкция делает пространство имён std текущим, что позволяет получить прямой доступ к именам функций и классов, определённых в библиотеке языка Standard Си, без необходимости каждый раз с помощью оператора расширения области видимости уточнять, что используется пространство имён std.
Тем не менее, если пожелаете, может перед каждым идентификатором ставить имя пространства имён std и оператор расширения области видимости - ошибки не будет.
Если в вашей программе не предусмотрено широкое использование библиотеки языка Standard C++, вы можете не вводить пространство имён std в глобальную область видимости.
Однако, если в вашей программе содержатся тысячи ссылок на стандартные библиотечные имена, включить в программу идентификатор std гораздо проще, чем добавлять его чуть ли не к каждой инструкции.
ссылка на первоисточник http://khpi-iip.mipk.kharkiv.e... lava13.pdf
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.JPG
Просмотров: 318
Размер:	14.5 Кб
ID:	506  
Метки c++
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 159
Комментарии
  1. Старый комментарий
    Аватар для -=ЮрА=-

    Не по теме:

    Также хочу отметить что ваш покорный ответчик привык к абстракциям совсем иного плана нежели using namespace и прочее (пишу под виндовс и создаю приложения с диалоговым интрфейсом там вот этих всех проблем нет верней они уже были решены заранее и обплетены надстройками более продвинутых классов и интерфейсов, так что спейсы просто отдыхают пожалуй...)

    Запись от -=ЮрА=- размещена 28.07.2012 в 11:43 -=ЮрА=- вне форума
  2. Старый комментарий
    Аватар для -=ЮрА=-
    Теперь буду свои слова сопровождать нагляными примерами,
    https://www.cyberforum.ru/cpp-... 29938.html
    вот честно ложа руку на сердце скажем - сильно ли помогло человеку std:: в решении задачи, его код очень прозрачен???(напишу мысли с позиции новичка :"Оу щет, идёт куча двоеточей ХЗ зачем, я вот недавно прочёл что есть string вот тут пример с ним http://www.cplusplus.com/refer... g/replace/ но нигде нету двоеточий, зачем же они в коде???")
    Автор темы пишет std:: потому что ему просто внушили что так лучше, отравили человеку мозг и даже не спросили его на то разрешение + даже альтернатив не показали, вобщем
    мои посты идут с отсюда https://www.cyberforum.ru/cpp-... ost3308502
    абстракция всего здесь http://codepad.org/DTcFk7zd
    Как видим всё чистенько и хорошо работает без std:: так что не надо меня переубежадть - отчистите лучше свои мысли от навеянных тенденций (весьма и весьма глупых на мой взгляд)
    Запись от -=ЮрА=- размещена 28.07.2012 в 15:30 -=ЮрА=- вне форума
  3. Старый комментарий
    Аватар для vxg
    1. вроде не "CDialog::SetWindowText", а "CWnd::SetWindowText", но не в этом суть. о каком временном объекте речь? я наверное вас просто не так понял. если вы устанавливаете текст заголовка окна, то объект окна очевидно должен существовать. я далек от мысли, что вы называете "CDialog::" временным объектом. сравнение вызовов "CWnd::SetWindowText" и "SetWindowText" некорректно. один вызов является методом класса, другой - функцией WinAPI которой, кстати, передается хэндл окна, что менее наглядно, менее читабельно и прыгает далеко в сторону от объектно-ориентированной методологии. в общем, я не понял о чем вы.
    2. "если выов второго класса нужен в 2-х 3-х строка я не против ставьте спейс:: если больше, то никаких у вас обоснований нагромождать код двоеточечням хламом я не вижу!" - еще раз пробубню, что использование using, если оно допускается в проекте, должно регламентироваться каким-нибудь соглашением между разработчиками, наподобие "все стандартные функции используем с using без std::". если проект достаточно развит таких соглашений быть не может, так как функции разных пространств будут использоваться почти одинаково часто. поэтому конструкции "std::" универсальны и так широко распространены. поэтому действительно разумные книжки не злоупотребляют using. поэтому они учат людей так делать. а не потому, что все "глупые люди" так делают.
    3. если у человека возникает текст "Оу щет, идёт куча двоеточей ХЗ зачем" ему не поможет using)) using этого человека просто разорвет) не сегодня. завтра)
    4. не нужно на своих привычках основывать новую "религию". типовой подход к программированию в C++ основан на использовании конструкций вида "std::". вы просто не привыкли к "std::". это напоминает введение в язык конструкций #define begin { теми кто не привык к {
    Запись от vxg размещена 30.07.2012 в 09:59 vxg вне форума
  4. Старый комментарий
    Аватар для -=ЮрА=-
    vxg касательно 1-го пункта
    часть afxwin.h
    C++
    1
    2
    
    class CDialog : public CWnd
    {
    можете на досуге испробовать этот код
    C++
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    void CWndTextDlg::OnOK() 
    {
        // TODO: Add extra validation here
        CDialog::SetWindowText("TEST");
        AfxMessageBox("Press OK");
        CWndTextDlg::SetWindowText("Test");
        AfxMessageBox("Press OK");
        CDialog::OnOK();
    }

    Думаю должно быть видно что CWndTextDlg наследует базовый CDialog
    C++
    1
    2
    
    class CWndTextDlg : public CDialog
    {
    и SetWindowText будет виртуальным методом в контексте CDialog. (Интересно что же для вас CDialog::SetWindowText как не временный объект?) Давайте MFC пока что отодвинем в сторону ведь суть в другом.

    Касательно всего остально - могу сказать одно у вас чувствуется наличие знаний, однако шаблонных я бы сказал, которые тянут вас на дно, не давая посмотреть на мир беспристрастно. Отмечу, что на всех 8-ми страницах данной темы так и не нашёл достойного примера когда же using namespace уступает space:: кроме этого даже литературу здесь привёл https://www.cyberforum.ru/blog... omment3222 (а ведь на Шильда у нас здесь на форуме многие так сказать "молятся", почему бы и вам его словам не внять если мои не воспринимаются?)

    Не по теме:

    PS: Кстати можно парочку ссылок на "умные" в вашем понимании книги

    поэтому действительно разумные книжки не злоупотребляют using. поэтому они учат людей так делать.
    С удовольствием посмотрю что за "светила" их написали:)

    Запись от -=ЮрА=- размещена 30.07.2012 в 13:26 -=ЮрА=- вне форума
  5. Старый комментарий
    Аватар для vxg
    касательно ответа на первый пункт - вы продолжаете меня удивлять. я наверное все таки вас не так понимаю. метод SetWindowText объявлен в классе CWnd. класс CDialog наследует этот метод от своего базового класса CWnd. на основе базового класса CDialog вы создаете (предположительно так как в MFC я не работаю) свой объект интерфейса с классом CWndTextDlg которому по наследству придет все тот же метод SetWindowText. если базовые классы не содержат методов с одинаковыми сигнатурами, то вызывать один из методов класса внутри другого метода того же класса используя квалифицированное имя (CDialog::SetWindowText) могут только, простите, дегенераты - все методы класса итак нормально воспринимаются внутри класса. CDialog::SetWindowTex (или, точнее, CDialog:: ) - это не временный объект. это вообще не объект. это вызов метода класса с помощью квалифицированного имени. префикс CDialog:: используется для указания области действия. это, еще раз, не объект.
    ----
    ссылка не литературу которую вы привели содержит очевидные вещи. да, мы знаем что пространства имен есть. да, мы знаем что есть инструкция using. да, автор сказал нам что можно ей пользоваться. и что? вы то призываете нас придать анафеме конструкции вида std:: а это совсем другое. тем более что все это подается как философский камень тем людям которые еще не в силах отличить хорошее от лучшего.
    ----
    поскольку вы спокойно препарируете под свои нужды труды любых "светил" сложно будет дать вам правильную ссылку. ну, не совсем то, но, например, вот))
    http://google-styleguide.googl... Namespaces
    ///////
    читать там где
    You may not use a using-directive to make all names from a namespace available.
    // Forbidden -- This pollutes the namespace.
    using namespace foo;
    ///////
    а вы тоже тогда покажите ссылку где говорится о том что using круто, а конструкции вида std:: - вредная графомания и сорная трава
    Запись от vxg размещена 30.07.2012 в 16:30 vxg вне форума
  6. Старый комментарий
    Аватар для -=ЮрА=-
    а вы тоже тогда покажите ссылку где говорится о том что using круто, а конструкции вида std:: - вредная графомания и сорная трава
    - ты что издеваешся блин???
    Я блин кому линк давал
    литературу здесь привёл https://www.cyberforum.ru/blog... omment3222
    - пустому месту??!
    Вот тут прочти
    http://khpi-iip.mipk.kharkiv.e... lava13.pdf
    Касательно того что ты привел
    You may not use a using-directive to make all names from a namespace available.
    Специально для людей с плохим знанием английского даю пояснение - написано
    Вы можете не использовать using-директиву чтобы сделать доступными все имена из спейса доступными
    Ключевое слово ВЫ можете - а не ВЫ не должны - уловил?!
    Притом строкой ниже идёт
    You may use a using-declaration anywhere in a .cc file, and in functions, methods or classes in .h files.
    - перевести сможешь или помочь?
    Причём там речь шла о конструкциях типа using std::cout за которые я ещё сдесь написал https://www.cyberforum.ru/blog... omment1397. Касательно using space::fun вообще от тебя пошло пару страниц назад, я показал что и это можно обходить.
    Мне немного поднадоел наш бессмысленный разговор, особенно об MFC, давай я не буду проделывать тебе ликбез по наследованию классов и виртуальным функциям, а то складывается впечатление что плаваешь в этом аспекте...
    это вызов метода класса с помощью квалифицированного имени.
    - ещё бы написал
    с точки зрения банальной эрудииции...
    - это вызов виртуальной функции, разберись в наследовании классов...
    Запись от -=ЮрА=- размещена 30.07.2012 в 17:16 -=ЮрА=- вне форума
  7. Старый комментарий
    Аватар для grizlik78
    Цитата Сообщение от -=ЮрА=-
    Касательно того что ты привел
    You may not use a using-directive to make all names from a namespace available.
    Специально для людей с плохим знанием английского даю пояснение - написано
    Вы можете не использовать using-директиву чтобы сделать доступными все имена из спейса доступными
    Ключевое слово ВЫ можете - а не ВЫ не должны - уловил?!
    Это уже не смешно. Ты, оказывается, ещё и по-английски читать не умеешь, а туда же, учить...
    Запись от grizlik78 размещена 30.07.2012 в 17:42 grizlik78 вне форума
  8. Старый комментарий
    Аватар для -=ЮрА=-
    grizlik78 - я то как раз умею посмотри что значит глагол may - который означает мочь
    И наверно я для слепых привёл нижний текст
    You may use a using-declaration anywhere in a .cc file, and in functions, methods or classes in .h files.
    Ладно пацаны вы тут написали много словес, среди которых особенно улыбнуло
    квалифицированного имени.

    На досуге советую пощупать этот код, чтобы хоть в MFC понимали что к чему
    C++
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    void CWndTextDlg::OnOK() 
    {
        // TODO: Add extra validation here
        CDialog::SetWindowText("TEST");
        AfxMessageBox("Press OK");
        CWndTextDlg::SetWindowText("Test");
        AfxMessageBox("Press OK");
        CDialog::OnOK();
    }
     
     
    void CWndTextDlg::SetWindowText(LPCTSTR szTitle)
    {
        CString str = szTitle;
        str = "Virtual fun " + str;
        CDialog::SetWindowText(str);
    }
    Запись от -=ЮрА=- размещена 30.07.2012 в 17:51 -=ЮрА=- вне форума
  9. Старый комментарий
    Аватар для -=ЮрА=-

    Не по теме:

    Советую поучить английский вам, а не юзать тупой гугл ворд ту ворд

    Запись от -=ЮрА=- размещена 30.07.2012 в 17:53 -=ЮрА=- вне форума
  10. Старый комментарий
    Аватар для grizlik78
    http://www.ab.com/linked/progr... /eula.html
    Limitation on Reverse Engineering, Decompilation, and Disassembly

    You may not reverse engineer, decompile, or disassemble the Software. You may not copy the Software or transfer it to other devices without the express prior written consent of Rockwell.
    Всё это делать нельзя. Но тебе, разумеется, можно.
    Удачи.
    Запись от grizlik78 размещена 30.07.2012 в 20:12 grizlik78 вне форума
  11. Старый комментарий
    Аватар для -=ЮрА=-
    grizlik ты как упертый баран,в англ имеет значение все и may not не эквивалентно may not to use.Ты мне напоминаешь людей которые говорили мадэ ин хина даже не понимая как это режет слух...Тебе тоже удачи!
    Запись от -=ЮрА=- размещена 30.07.2012 в 22:03 -=ЮрА=- вне форума
  12. Старый комментарий
    Аватар для Pure
    а Юрок то прав. И знаете в чем? В том, что не надо доходить до маразма выполняя как робот то, что "кто то сказал вслух" и не осознав это. Я уже встречал надписи плана надо использовать классы потому что надо. Они полезны. Знаете, все должно быть к месту и по ситуации. И прежде чем, что либо использовать, а тем более поучать остальных, надо как минимум понимать о чем речь. К чему были цитаты с англоязычных источников - непонятно. Их вес равен нулю без приложения к конкретному опыту и ситуации. Сухая теория без практики - ничто.
    Запись от Pure размещена 30.07.2012 в 23:14 Pure вне форума
  13. Старый комментарий
    Аватар для vxg
    "Я блин кому линк давал" - уважаемый, в вашем линке, повторюсь, просто описывается, что такое пространства имен, вы сами читать умеете? где там написано, что "желательно пользоваться конструкциями using вместо префиксов указывающих пространство имен"?
    ----
    "Ключевое слово ВЫ можете" - отодвиньте в сторону словарик, это как раз вам не нужно дословно переводить текст, вам показать сколько значений имеет это слово и вообще как оно вяжется с контекстом? в данном случае в связке с окружением я бы перевел его как "вам следует избегать использования/вам не следует использовать". специально для сомневающихся внизу дан пример с надписью красными буковками "Forbidden -- This pollutes the namespace" - запрещено - это засоряет пространство имен.
    ----
    "Притом строкой ниже идёт" - внимательно читаем и вникаем в отличия между "You may not use a using-directive" и "You may use a using-declaration" - во втором случае речь идет о внесении в глобальное пространство имен конкретных компонентов некоторого пространства имен, в данном случае - подпространства имен bar.
    ----
    касательно вашего понимания объектно-ориентированного программирования - я понял, извините за каламбур, что я вас правильно понял: вы просто не понимаете, что такое классы. я был большего мнения об отметке "адванс" под вашим ником. если вам не знаком термин квалифицированное имя можете называть это указанием области действия или, как вам более привычно, "оу щет эта хреновина с двоеточиями". я прекрасно знаю, что это вызов виртуальной функции. а вот вы одновременно пребываете в уверенности, что тут "CDialog::SetWindowText" где-то какой-то временный объект
    ----
    для Pure - это парадокс, но здесь мы не спорим о том, что в конкретной ситуации использование данной конструкции может быть обосновано - это очевидно, она ведь есть в языке . я лично борюсь против термина "надуманные гипотетичекие проблеммы перекрёстного использования пространств имён с одинаковыми функциями"
    Запись от vxg размещена 31.07.2012 в 09:28 vxg вне форума
  14. Старый комментарий
    Аватар для -=ЮрА=-
    vxg , вы с гризликом уже просто потонули в своём "А БАБА ЯГА ПРОТИВ", давайте ещё приложим сюда цитаты из корейского транслэйта на английский и будем его разбирать. В английском языке что бы сказать НЕ ИСПОЛЬЗУЙТЕ применяют выражения
    DO NOT USE или YOU SHOULDN'T USE
    я прекрасно знаю, что это вызов виртуальной функции.
    - так какого хрена ты писал что это не так
    Не надо пытаться тут привселюдно полить меня грязью, я не собираюсь брать транспорант и идти в бой. Когда надо пишу хорошие и понятные приложения лишённые всякого бреда а также "квалифицированных имён"


    Вам ни Шильдт, ни куча примеров ничего так и не сказали - я уже говорил в среденевековье для людей земля была плоской и центром вселенной, а сама она стояла на 3-х китах, что ж оставайтесь в своём среденевековье, возможно когда то прогресс прийдёт и к вам)))
    Но что мне спорить, всё равно твой мозг и мозг твоего товарища придумает очередной тролинг, на пустом месте
    Запись от -=ЮрА=- размещена 31.07.2012 в 09:54 -=ЮрА=- вне форума
  15. Старый комментарий
    Аватар для -=ЮрА=-
    Ах да vxg чтобы ты знал что такое временный объект и как завязаны между собой CWnd CDialog и потомок CDialog коим является экземпляр класса для текущего приложения, покури этот код (надеюсь у тебя нет проблемм со зрением и увидишь что CFirst::SetOutputText("test") работает без конструктора
    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
    
    #include <iostream>
    using namespace std;
     
    class CFirst
    {
    public:
        CFirst(){cout<<"CLASS CFirst constructor\n";}
        static void SetOutputText(const char * str)
        {
            cout<<"CFirst SetOutputText : "<<str<<endl;
        }
    };
     
    class CSecond : public CFirst
    {
    public:
        CFirst pFirst;
        CSecond(){cout<<"CLASS CSecond constructor\n";}
        static void SetOutputText(const char * str)
        {
            cout<<"CSecond SetOutputText : "<<str<<endl;
        }
    };
     
     
    class CThird : public CSecond
    {
    public:
        CSecond pSecond;
        CThird(){cout<<"CLASS CThird constructor\n";}
        static void SetOutputText(const char * str)
        {
            cout<<"CThird SetOutputText : "<<str<<endl;
        }
    };
     
    int main()
    {
        CFirst::SetOutputText("test");
        cout<<"\tDeclare CThird\n";
        CThird pThird;
        pThird.SetOutputText("test");
        return 0;
    }
    Проверка http://codepad.org/iCNftiFf
    CFirst SetOutputText : test
    Declare CThird
    CLASS CFirst constructor
    CLASS CFirst constructor
    CLASS CSecond constructor
    CLASS CFirst constructor
    CLASS CFirst constructor
    CLASS CSecond constructor
    CLASS CThird constructor
    CThird SetOutputText : test
    На сим пока и дорости сам до уровня, чтобы с тобой было о чём говорить, а не выслушивать твой бред...
    Запись от -=ЮрА=- размещена 31.07.2012 в 10:17 -=ЮрА=- вне форума
  16. Старый комментарий
    Аватар для vxg
    "так какого хрена ты писал что это не так" - где)?
    а что это вы про свой временный объект ни гугу? лажаем и молчим?
    Запись от vxg размещена 31.07.2012 в 10:19 vxg вне форума
  17. Старый комментарий
    Аватар для vxg
    о да, увидел ваш временный объект. раскрою вам глаза - это не временный объект даже в вашем понимании:
    1. вы переврали класс сделав функцию SetOutputText статической - давайте вспомним, что она виртуальная и унаследована от базового класса
    2. даже если закрыть глаза на то как вы лихорадочно заметаете следы собственной невежественности, то для вызова статической функции "CFirst::SetOutputText" не нужен никакой временный объект
    Запись от vxg размещена 31.07.2012 в 10:23 vxg вне форума
  18. Старый комментарий
    Аватар для -=ЮрА=-

    Не по теме:

    PS:Некая ненормативность лексики в моих ответах появляется в тех случаях, когда встречаю уаппонента полное непонимание, а порой и его "святую глупость" , к сожалению я вспыльчив (это мой недостаток с которым продолжаю бороться). Так что прошу у всех прочитавших эту тему от начала до конца, прощения за некоторые грубости в тексте (доводят люди иногда:pardon:)

    Запись от -=ЮрА=- размещена 31.07.2012 в 10:24 -=ЮрА=- вне форума
  19. Старый комментарий
    Аватар для ForEveR
    C++
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    void CWndTextDlg::OnOK() 
    {
        // TODO: Add extra validation here
        CDialog::SetWindowText("TEST");
        AfxMessageBox("Press OK");
        CWndTextDlg::SetWindowText("Test");
        AfxMessageBox("Press OK");
        CDialog::OnOK();
    }
    (Интересно что же для вас CDialog::SetWindowText как не временный объект?)
    Какой к херам временный объект? Читай стандарт.
    Explicit qualification with the scope operator (5.1) suppresses the virtual call mechanism. [ Example:
    C++
    1
    2
    3
    
    class B { public: virtual void f(); };
    class D : public B { public: void f(); };
    void D::f() { /∗ ... ∗/ B::f(); }
    Here, the function call in D::f really does call B::f and not D::f. — end example ]
    Запись от ForEveR размещена 31.07.2012 в 10:42 ForEveR вне форума
  20. Старый комментарий
    Аватар для ForEveR
    Кстати, очень бы рекомендовал прочитать про ADL.

    http://en.wikipedia.org/wiki/A... ame_lookup
    Запись от ForEveR размещена 31.07.2012 в 10:45 ForEveR вне форума
 
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru