Например у меня есть функция int foo() {return 0;};
. И где нибудь в main
я буду вызывать foo()
, а как оператор ()
работает в данном случае ?
foo()
используется комбинация символов ()
. Это может быть и оператор вызова функции, и часть синтаксиса приведения типа в функциональной нотации. Компилятор не может определить, что это такое, на основе лишь внешнего анализа синтаксиса.()
находится идентификатор foo
. Это приводит к запуску процесса поиска имен (name lookup), который ищет имя foo
для того, чтобы выяснить, что же оно из себя представляет. Процесс поиска имен выясняет, что foo
- это имя функции. Это значит, что слева от ()
располагается выражение типа "функция" и что ()
является именно оператором вызова функции. Также из этого следует, что в данном случае используется встроенный оператор ()
. foo
и предоставленных аргументов выбирает самую подходящую версию функции foo
. В вашем примере аргументов нет, а кандидат всего один. То есть процесс разрешения перегрузки выбирает именно вашу единственную функцию foo
. foo
. И получение результата, если вы его получаете.Вот так работает встроенный оператор ()
.
Какая библиотека на C++ существует для рисования SVG? Использовать буду в Qt, а встроенный отрисовщик в Qt не очень шустрый
Тут я как всегда не вовремя задумался вот над каким вопросомПри выделении памяти из кучи очевидно, что в куче должна сохраняться информация...
Нужна помощь в определении необходимых библиотек, чтобы реализовать приложение в котором будут воспроизводиться музыкальные файлы и различные...