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

Дедушка, а что это за костыль у тебя? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как создаются языки программирования? http://www.cyberforum.ru/cpp/thread1080979.html
я не программист и в этом не силен, но господа программисты, у меня возник вопрос!! КАК СОЗДАЛИ ЯЗЫК ПРОГРАММИРОВАНИЯ (например си), ну в смысле вообще как!!!?? с помощью чего!!!?? как запрограммировали команды?? в то время то эвм какие были!!!! грубо говоря у меня есть компьютер, и как я могу СОЗДАТЬ язык программирования!! надеюсь мой вопрос понятен. заранее спасибо.
C++ Объясните пожалуйста зачем нужна структура класса iterator_traits. Всем привет! Объясните пожалуйста зачем нужна структура класса iterator_traits. Ведь все тайпдефы, которые содержатся в этой структуре имеются в каждом стандартном контейнере. И код: template <class T> typename iterator_traits<T>::reference func(T iter_begin) { typename iterator_traits<T>::reference d = *iter_begin; return d; } http://www.cyberforum.ru/cpp/thread1079722.html
C++ Как объединить файлы?
Допустим, я хочу сделать программу на с++, интерфейс к ней на с#. Как это осуществить? Спасибо!
Как скопировать картинку из буфера обмена в CImage ? Visual C++
Вот так работает (файл корректно сохраняется с содержимым буфера обмена): if ( OpenClipboard(hwnd) ){ HBITMAP handle = (HBITMAP)GetClipboardData(CF_BITMAP); CImage im; im.Attach(handle); CloseClipboard(); im.Save("test.bmp"); }
C++ Warning LNK4248: неразрешенная лексема TypeRef для "GLUquadric" http://www.cyberforum.ru/cpp/thread1078671.html
Добрый день господа эксперты! Помогите с таким вопросом компилятор выдает: frmMain.obj : warning LNK4248: неразрешенная лексема TypeRef (01000038) для "GLUquadric"; образ нельзя запустить. Но при этом след. код нормально работает: GLUquadric *qC1; qC1= gluNewQuadric();
C++ Подскажите, пожалуйста, где можно подробнее узнать о библиотеки <ios> и параметре system(.); заранее спасибо. подробнее

Показать сообщение отдельно
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
04.02.2014, 02:21     Дедушка, а что это за костыль у тебя?
Dmitriy_M, ну в цпп наследование реализовано очень низкоуровнево (например при наследование методы могут быть как virtual, так и не virtual)
Это с одной стороны теоретически предполагает некоторую гибкость (местами порождая темные паттерны), с другой стороны должно служить целям перформанса (экономия хождения по vtable'у). На самом деле мы получаем :
--> неожиданный полиморфизм - невиртуальные методы в разных контекстах ведут себя по-разному
--> невиртуальные методы могут перегружаться (создавая новые контексты)
--> с одной стороны есть public/private/protected наследования, с другой стороны в субклассах можно использовать свои модификаторы доступа, нарушая таки модель наследования
--> в ряде случаев виртуальные методы не могут быть вызваны из конструктора
--> reflection'a с таким подходом не будет никогда
--> ...
я джаву знаю достаточно посредственно, но насколько я вижу этих проблем там нет (за счет отказа от невиртуальных методов, перегрузки, волной трактовки доступа итд)

самые суровые грабли начинаются при множественном наследовании (от которого в явном виде отказались в жабе)
ну это вообще отдельный разговор - несколько виртуальных таблиц, ромбовидное наследование, виртуальное наследование...
 
Текущее время: 10:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru