Предположим, что я создал набор классов для абстрагирования чего-то, и теперь я беспокоюсь, сможет ли мой компилятор С++ очистить эти обертки и испустить действительно чистый, сжатый и быстрый код. Как узнать, что решил компилятор?
Единственный способ, которым я знаю, - проверить демонтаж. Это хорошо работает для простого кода, но есть два недостатка - компилятор может сделать это по-другому, когда он снова компилирует тот же код, а также анализ машинного кода не является тривиальным, поэтому он требует усилий.
Как еще я могу узнать, как компилятор решил реализовать то, что я закодировал на С++?