Мне интересно, почему в Visual Studio 2012 Desktop, когда я печатаю:
struct a
{
struct b
{
int foo;
};
b bar;
bar.
};
IntelliSense вызывает: «Нет доступных членов». То есть. когда я набираю «бар». в структуре а.
И мой вопрос — это ошибка Visual Studio 2012 или моя глупость? Для меня это очень раздражает, и я молюсь за все, чтобы это исправить.
Редактировать:
Хотя я и вел себя глупо, когда писал такой код, у меня все еще есть эта проблема даже в функциях. Но я понял одно большое требование — это должен быть шаблон класса.
Итак, настоящий код:
template<typename def>
class lista
{
private:
struct wezel
{
int poprz;
};
wezel* current;
public:
void do_tylu()
{
current->
}
};
И тогда IntelliSense начинают давить …
В этом примере вы вводите выражение вне метода (или инициализатора поля). Это не разрешено в C ++, поэтому алгоритм IntelliSense не имеет никакой полезной информации.
Вместо этого попробуйте следующее:
struct a
{
struct b
{
int foo;
};
b bar;
void SomeMethod()
{
bar.
}
};
Других решений пока нет …