Это зависит от природы метода и как это будет использоваться. Если это - нормальное поведение, которым объект не может быть найден, затем возвратить пустой указатель. Если это - нормальное поведение, которым всегда находится объект, выдайте исключение.
Как показывает опыт, используйте исключения только для того, когда что-то исключительное произойдет. Не пишите код таким способом, которым бросок исключения и ловля являются частью своего нормального функционирования.
This is a good place to look for Visual Studio Extensibility.
Also, here. But, the first link has a video specific to adding Intellisense to your language service.
Все зависит от того, сколько времени вы хотите потратить на это. У меня около 2000 часов работы над проектами Visual Studio IntelliSense, в результате чего получается ровно одна практически полная языковая служба. Тем не менее, это не ваше «среднее» расширение IntelliSense для Visual Studio - дополнительную информацию см. В наборе функций .
Вот несколько полезных ресурсов, на которые стоит обратить внимание. Я склонен писать, исходя из предположения, что пользователи уже знакомы как с основами расширяемости Visual Studio, так и с анализом с помощью ANTLR. В противном случае вам, вероятно, следует начать с www.antlr.org и с моего «порта ANTLR» одного из простых руководств по языковой службе Visual Studio .
Здесь есть несколько сообщений, показывающих, насколько я серьезно отношусь к этому вопросу. : D
PS: Теперь я могу создать подсветку синтаксиса для нового языка с комментариями / раскомментированием в 1 день. В тот же день я часто могу получить панели типов и членов.
Мое понимание здесь заставляет меня немного снисходительно относиться к тому, что они нарушили его для VS2010 Beta 1, но это не мешает мне упустить его великолепие.PS: Теперь я могу создать подсветку синтаксиса для нового языка, комментируя / раскомментируя в 1 день. В тот же день я часто могу получить панели типов и членов.
Мое понимание здесь заставляет меня немного снисходительно относиться к тому, что они нарушили его для VS2010 Beta 1, но это не мешает мне упустить его великолепие.PS: Теперь я могу создать подсветку синтаксиса для нового языка, комментируя / раскомментируя в 1 день. В тот же день я часто могу получить панели типов и членов.