Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / VS 2017 найти все определения которые не определены / 10 сообщений из 10, страница 1 из 1
09.07.2018, 14:32
    #39671638
Ciplusor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
Не могу найти, можно ли выявить все методы которые описаны в заголовке, но не определены в теле? Допустим я в заголовочном описал три процедуры, в коде для двух сделал решение, а про третий забыл. И студия никак об этом не говорит ибо ссылок на метод нет - ей он не интересен. А потом приходит второй человек, который начинает пользоваться моим методом - и ему выдается "неразрешенный символ".

Так вот, как-то можно в самой студии выявить эти методы пустышки, не перебирая вручную все юниты в поисках подсветки зеленой волнистой линией? Ведь раз подсвечивает, значит может. Но все меню что поперетыкал - ни одного хинта нет что есть нереализованные методы
...
Рейтинг: 0 / 0
09.07.2018, 14:38
    #39671641
rdb_dev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
Ciplusor, только если ты объявляешь абстрактный класс с чисто виртуальными функциями. Для всего прочего - никак, ибо это противоречит парадигме запрета реализации метода по умолчанию для таких методов как конструктор, конструктор копии, конструктор перемещения и пр.
...
Рейтинг: 0 / 0
10.07.2018, 03:02
    #39671870
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
Ciplusor ни одного хинта нет что есть нереализованные методыЕсли методы не используются - то они нафиг никому не нужны.
...
Рейтинг: 0 / 0
10.07.2018, 05:33
    #39671877
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
У меня 2017-я студия зелёным подсвечивает имена методов, у которых нет реализации.
...
Рейтинг: 0 / 0
10.07.2018, 13:09
    #39672036
egorych
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
Ciplusorесть нереализованные методыюнит-тесты надо писать и сразу проблема пропадёт сама собой
...
Рейтинг: 0 / 0
11.07.2018, 20:06
    #39672741
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
CiplusorНе могу найти, можно ли выявить все методы которые описаны в заголовке, но не определены в теле? Допустим я в заголовочном описал три процедуры, в коде для двух сделал решение, а про третий забыл. И студия никак об этом не говорит ибо ссылок на метод нет - ей он не интересен. А потом приходит второй человек, который начинает пользоваться моим методом - и ему выдается "неразрешенный символ".

Так вот, как-то можно в самой студии выявить эти методы пустышки, не перебирая вручную все юниты в поисках подсветки зеленой волнистой линией? Ведь раз подсвечивает, значит может. Но все меню что поперетыкал - ни одного хинта нет что есть нереализованные методы

Запусти сборку, тебе линкер выдаст все неопределённые функции.
...
Рейтинг: 0 / 0
12.07.2018, 00:21
    #39672803
egorych
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
MasterZivЗапусти сборку, тебе линкер выдаст все неопределённые функции.если их никто не вызывает, то линкер ничего не скажет
...
Рейтинг: 0 / 0
12.07.2018, 13:30
    #39673115
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
egorychMasterZivЗапусти сборку, тебе линкер выдаст все неопределённые функции.если их никто не вызывает, то линкер ничего не скажет

Ну так вызови...
...
Рейтинг: 0 / 0
12.07.2018, 13:46
    #39673132
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
CiplusorНе могу найти, можно ли выявить все методы которые описаны в заголовке, но не определены в теле? Допустим я в заголовочном описал три процедуры, в коде для двух сделал решение, а про третий забыл. И студия никак об этом не говорит ибо ссылок на метод нет - ей он не интересен.

Невозможно.
Это нормальное явление с точки зрения языка С++ (и С), когда какая-то функция объявлена, но не определена.
То, что тебе подсвечивается в IDE, всего лишь замечание и подсказка.
В IDE обычно есть окно, где все результаты статического анализа кода показываются.
Найди такое окошко и наслаждайся.

Или пиши тесты, как уже сказали. Само не соберётся.

Ну и P.S. -- какая-то очень надуманная проблема. Если ты реально программу пишешь и отлаживаешь, то
тебе (ещё раз) линкер 200 раз ткнёт носом, что нет функции. Проблема твоя актуальна только если пишешь код на "отвали"...
...
Рейтинг: 0 / 0
12.07.2018, 17:38
    #39673283
egorych
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VS 2017 найти все определения которые не определены
MasterZivНу так вызови...так я ему и говорю: "пиши юнит-тесты" ))
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / VS 2017 найти все определения которые не определены / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]