#4

Какую интересную штуку я обнаружил пока делал “домашнее задание”.
Те, кто программируют на C++, наверно, знают, что есть такое ключевое слово inline. Оно предлагает компилятору встроить описываемую функцию в точку её вызова. Если не вдаваться в глубокие подробности, то такие функции несколько убыстряют работу программы, но увеличивают бинарный файл. Так вот, если попробовать переопределить оператор ’<<', а внутри работать с объектом, у которого были описаны inline функции, то компилятор будет выкидывать ошибку.
Создадим файл matrix.cpp с таким содержанием

В файле matrix.h определим класс matrix так

Основной файл main.cpp будет выглядеть так

Собственно, было бы интересно узнать с чем связано такое поведение.

Share
Send
2012   C++   Загадки
← Ctrl →
Popular