AlexOr 0 19 августа, 2013 Опубликовано 19 августа, 2013 · Жалоба Смотрю map файл в секции text. Есть базовый класс 4 КБ. Дочерний класс 5 КБ , а он содержит буквально несколько нехитрых строк. Получается, что дочерний включил в себя ВЕСЬ код родителя. Что-то я не понимаю ООП на микроконтроллерах. Как так? Получается написал пять строк и забил всю память. Как заставить компилятор видеть, что основная часть кода одинакова у родителя и потомка? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 20 августа, 2013 Опубликовано 20 августа, 2013 · Жалоба все же, как вы выяснили размер кода, обслуживающего класс? Есть ли оптимизация? функции методы наследованы виртуально (хотя это значения не должно иметь)? Листинг? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
thodnev 0 20 августа, 2013 Опубликовано 20 августа, 2013 · Жалоба при наследовании в плюсах, потомок включает весь код родителя, дополняя его своими методами, полями и т.д. Ничего не поделаешь, разве что сделать больше приватных методов, включить -О3, возможно вызывать функции при помощи расширения, т.е. Class:function1(); На плюсах не пишу, больше ничем не могу помочь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 34 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба при наследовании в плюсах, потомок включает весь код родителя, дополняя его своими методами, полями и т.д. Ничего не поделаешь При этом исполняемый код не должен раздуваться. Т.е. если класс имеет функций-членов на 4 кбайта и его наследник вводит ещё своих пару, то общий объём кода должен увеличиться только на эти пару функций - остальные наследник будет использовать из базового. А у ТС аномалия, по его словам, - добавил наследник и код увеличился в два раза. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба гм, а функция надеюсь не printf (cos(rand)) была ? :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться