Олег Цилюрик: Ну да, malloc — библиотечный вызов и эта функция точно в RTL. Но new — это также вызов некой функции (выделение памяти), которая обязана быть где-то в RTL, а потом — вызов конструктора, он-то уж где попадётся.
Что такое «внутренние функции для обслуживания точки входа»? Под DOS это могло быть перехватить пару прерываний наподобие Ctrl+Break. Получить командную строку и преобразовать её в argc и argv. В консольной программе — создать консоль, и т.д. (мало кто знает, что GUI-программы Windows тоже имеют потоки ввода, вывода и ошибок — просто консольного окна у них нет). Перевести библиотеку в однопоточный режим… В общем, они выполняются до main() и после него.
Олег Цилюрик: nevro: Шаблонные функции не хранятся, а каждый раз при компиляции расшаблониваются и компилируются в нужной специализации. Если вдруг у вас есть std::string где-то, попробуйте пройтись по проге отладчиком — он даже зайдёт в хедеры STL (другой вопрос, что ничего там не поймёшь).
Всё, что не шаблонное (int func(x)) или полностью специализировано (template<> int Type func(x)) — в общем, «по-хорошему» исходник должен быть в CPP — разумеется, хранится. Также стандартная библиотека может — ключевое слово может — специализировать некоторые шаблонные функции, просто чтобы хранить их в RTL. Например, некоторые функции std::string.
Отдельные функции. Дело в том, что STL — это куча шаблонов, и их надо как-то расшаблонивать. Отдельные, наиболее важные специализации (например, std::string и wstring), а также точные специализации каких-нибудь функций (ostream << int) могут храниться в рантайм-библиотеке, но в общем нет.
Если не ты — значит, использовать среднепотолочную гамму, а не замеренную колориметром на твоём мониторе.
И ещё — беру свои слова назад, на планшете выглядело дрянно (он сам масштабирует картинки, да ещё и матрица там ретиноподобная, но откровенно слабая). Посмотрел на настольном мониторе — всё верно там с гаммой, лучше не сделает ни PNG, ни SVG.
В TrueType-шрифтах именно для этого есть так называемый хинтинг (выравнивание горизонтальных и вертикальных прямых по пикселям).
Да, с языком есть аналогия. Языком надо пользоваться, понимать, как он работает, и осваивать действием. То же самое и с компьютерной библиотекой: понимать, как работает, и осваивать действием.
Ну конечно, то, что называется callback, на языке Java — интерфейс и некто, его реализующий.
Но ООП лишь частично решает задачу, ибо его задача — совладать со сложностью программ, состоящих из кучи взаимодействующих компонентов.
Дело я освоил, даже удивительно, что установка разовых, проблемно-ориентированных компонентов не обязательна. Потому ставлю решением — хоть и оно не решило задачу.
AtomKrieg: Посмотрел возможности libgdx, из «возможно, нужного мне» разве что чуть более быстрое рисование на настольных машинах. Игра-то пошаговая с несложной графикой.