Скорее всего в реале эти все un и c -- какие-то осмысленные префиксы и постфиксы реального имени. Н типа там ANSI\wchar_t версии WIN32.
И ему охота переименовать какой-то метод, например в осмысленной части, и что бы переименовались вызовы...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[4]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, Константин, Вы писали:
К>В Visual Assist есть переименование. Полезная вещь, и работает неплохо.
Речь не про переименование, а про описанную макросню...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[2]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Кстати, как там Delphi, в какую сторону развивается(язык/среда)? EP>Помню странный был язык — ни туда ни сюда ни GC ни RAII
RAII там есть — через интерфейсные ссылки или variant. А так да, странно, почему нет деструкторов для пользовательских типов, притом что для ряда встроенных типов они есть
Re[4]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, Sni4ok, Вы писали:
S>Здравствуйте, Ops, Вы писали:
Ops>>vim не нужен.
S>конечно, нужно анальное рабство от апла, майкрософта и других проприетарных производителей.
еще эклипс есть Жрет правда под 600 метров, зато никакого рабства
Re[7]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, enji, Вы писали:
e> RAII там есть — через интерфейсные ссылки или variant. А так да, странно, почему нет деструкторов для пользовательских типов, притом что для ряда встроенных типов они есть
Здравствуйте, hattab, Вы писали:
H>Здравствуйте, enji, Вы писали:
e>> RAII там есть — через интерфейсные ссылки или variant. А так да, странно, почему нет деструкторов для пользовательских типов, притом что для ряда встроенных типов они есть
H>В вариант объект сохранить нельзя.
Да почему, можно. Регистрируешь свой тип варианта и сохраняешь в него чего хочешь.
Re[9]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, enji, Вы писали:
e> H>Здравствуйте, enji, Вы писали:
e> e>> RAII там есть — через интерфейсные ссылки или variant. А так да, странно, почему нет деструкторов для пользовательских типов, притом что для ряда встроенных типов они есть
e> H>В вариант объект сохранить нельзя.
e> Да почему, можно. Регистрируешь свой тип варианта и сохраняешь в него чего хочешь.
Не, это фигня. У объекта, самого по себе, счетчика ссылок нет, поэтому управление его временем жизни будет очень условным. А так-то и без кастомного варианта можно ссылку на объект в вардату засунуть.
Здравствуйте, hattab, Вы писали:
e>> Да почему, можно. Регистрируешь свой тип варианта и сохраняешь в него чего хочешь.
H>Не, это фигня. У объекта, самого по себе, счетчика ссылок нет, поэтому управление его временем жизни будет очень условным. А так-то и без кастомного варианта можно ссылку на объект в вардату засунуть.
У объекта нет, а к варианту можно при желании прикрутить. Или копировать объект при копировании варианта к примеру. Деталей уже не помню, года два назад развлекался. Изврат, конечно
Re[11]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, enji, Вы писали:
e> H>Не, это фигня. У объекта, самого по себе, счетчика ссылок нет, поэтому управление его временем жизни будет очень условным. А так-то и без кастомного варианта можно ссылку на объект в вардату засунуть.
e> У объекта нет, а к варианту можно при желании прикрутить. Или копировать объект при копировании варианта к примеру. Деталей уже не помню, года два назад развлекался. Изврат, конечно
Не то чтобы изврат, но сильно ограниченное решение
Здравствуйте, Muxa, Вы писали:
K>>Был корректный компилирующийся код с шаблонами и макросами. После переименования в IDE получается не компилируемый код или не сохраняется семантика кода. Ни одна IDE для плюсов сейчас не справляется даже с rename. M>Допустим ты хочешь переименовать метод func() в f1unc() M>Что ты ожидаешь от IDE в это случае?
Лично я бы ожидал сообщение о том, что код слишком сложен для автоматического переименования. А молча ломать код или, что ещё хуже, менять его семантику — это просто забирает самое главное у рефакторинга — возможность полагаться на него без юнит-тестов. Если я в жаве делаю рефакторинг, он проект никогда не поломает. Я могу его делать и быть уверенным в том, что всё будет нормально или мне сообщат о проблемах. А если в таком специфическом языке, как С++ (с кучей унаследованного кода, в котором макрос на макросе макросом погоняет) рефакторинг не будет работать надежно, я бы его не стал использовать вообще. И, соответственно, при оценке IDE вычеркивал бы эту фичу из списка сравнения. Переименовать и руками можно.
Re[17]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, hattab, Вы писали:
EP>> H>Что ты называешь "обычным C++ API"? EP>> Классы, структуры, методы, функции, без специальных телодвижений в виде PIMPL, POD, wrapping to C, COM. H>Связываться с библиотеками не предоставляющими публичного API смысла вообще нет
А где я сказал что нет API? Есть API на C++, с помощью SWIG генерируются врапперы на другие языки.
EP>> H>Очевидно, библиотека должна быть готова к использованию внешней средой (т.е. не C++) и иметь какой нибудь способ взаимодействия: C-style API, COM-style API (как это делает винда для, например, XmlLite) EP>> Ну так SWIG как раз может прожевать C++ который далеко не C-style/COM-style, конечно не весь, иногда с подсказками. Но суть не в этом, а в том, что среди среди 20 target языков нет delphi. H>С 2008 года есть патч.
О том и речь — там только два файла, один 2008, второй 2009. Была бы среда популярной, хотя бы на десятую долю от C#/Java — давно была бы нормальная поддержка.
Re[18]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP> H>Связываться с библиотеками не предоставляющими публичного API смысла вообще нет
EP> А где я сказал что нет API? Есть API на C++, с помощью SWIG генерируются врапперы на другие языки.
Публичное API, а не набор классов для внутриязыкового использования.
EP> EP>> Ну так SWIG как раз может прожевать C++ который далеко не C-style/COM-style, конечно не весь, иногда с подсказками. Но суть не в этом, а в том, что среди среди 20 target языков нет delphi.
EP> H>С 2008 года есть патч.
EP> О том и речь — там только два файла, один 2008, второй 2009. Была бы среда популярной, хотя бы на десятую долю от C#/Java — давно была бы нормальная поддержка.
Я чего-то не пойму, язык что-ли виноват, что патчи не приняты? Или может модула-3, окамл и прочая экзотика популярнее дельфей?
vsb>Лично я бы ожидал сообщение о том, что код слишком сложен для автоматического переименования. А молча ломать код или...
Что собственно сейчас и происходит — код ломается. Но ты ведь не только пишешь код, но и компилируешь его?
Re[19]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, hattab, Вы писали:
EP>> H>Связываться с библиотеками не предоставляющими публичного API смысла вообще нет EP>> А где я сказал что нет API? Есть API на C++, с помощью SWIG генерируются врапперы на другие языки. H>Публичное API, а не набор классов для внутриязыкового использования.
Публичное API для разных языков с помощью SWIG, без сильных телодвижений в виде POD'ов, C-API, etc.
Re[20]: JetBrains объявили о будущей поддержке C++ в ReSharper
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP> EP>> H>Связываться с библиотеками не предоставляющими публичного API смысла вообще нет
EP> EP>> А где я сказал что нет API? Есть API на C++, с помощью SWIG генерируются врапперы на другие языки.
EP> H>Публичное API, а не набор классов для внутриязыкового использования.
EP> Публичное API для разных языков с помощью SWIG, без сильных телодвижений в виде POD'ов, C-API, etc.
Здравствуйте, Sni4ok, Вы писали:
S>Здравствуйте, Ops, Вы писали: S>конечно, нужно анальное рабство от апла, майкрософта и других проприетарных производителей.
Re[6]: JetBrains объявили о будущей поддержке C++ в ReSharper
vsb>Лично я бы ожидал сообщение о том, что код слишком сложен для автоматического переименования. А молча ломать код или, что ещё хуже, менять его семантику — это просто забирает самое главное у рефакторинга — возможность полагаться на него без юнит-тестов. Если я в жаве делаю рефакторинг, он проект никогда не поломает. Я могу его делать и быть уверенным в том, что всё будет нормально или мне сообщат о проблемах. А если в таком специфическом языке, как С++ (с кучей унаследованного кода, в котором макрос на макросе макросом погоняет) рефакторинг не будет работать надежно, я бы его не стал использовать вообще. И, соответственно, при оценке IDE вычеркивал бы эту фичу из списка сравнения. Переименовать и руками можно.
Это крайний случай, на самом то деле, такого кода обычно немного. А большая част кода — вполне себе классическая. В том же cdt для эклипса переименование есть, работает более-менее нормально.