2011-02-25 2 views
1

Можно ли использовать cppdepend (yes C++), чтобы сделать эквивалент Сделать деструкторов виртуальными в базовых классах, как сказал Скотт Майерс в своем very old comparison of C++ analysis tools?CQL ограничение списка классов для поиска баз с не виртуальными деструкторами?

Я могу перечислить методы с запросом

SELECT TOP 100 METHODS WHERE !IsVirtual AND IsDestructor 

Что мне нужно, как вложенный запрос, который позволяет мне ограничить типы методами или наоборот, что то, что я думаю, будет также отвечать this question.

Воображаемый синтаксис может быть как

SELECT TOP 100 METHODS WHERE !IsVirtual AND IsDestructor AND 
MethodClass IN TYPES WHERE NbChildren > 0 

или

SELECT TOP 100 METHODS 
OUT OF TYPES (WHERE NbChildren > 0) 
WHERE !IsVirtual AND IsDestructor 

ответ

1

Это не возможно еще с CQL, который не поддерживает вложенные запросы в настоящее время. Следующая крупная версия NDepend, которая будет выпущена в первой половине 2012 года, позволит вам написать такой запрос.