Доступ к защищенным участникам от подклассов: gcc по сравнению с msvc

Чтобы получить всех агентов с навыком 1, откройте конструктор запросов и создайте следующий запрос: enter image description here

это сгенерирует следующий sql

SELECT Skills.AgentName FROM Skills WHERE (((Skills.Skill1) = 1));

Если вы измените имена, вы также можете вставить этот запрос в панель SQL конструктора, чтобы получить нужный запрос. Чтобы получить все навыки, которые есть у агента, я выбрал параметризованный запрос. Откройте конструктор запросов и создайте новый запрос: enter image description here

Когда вы выполните этот запрос, он запросит у вас имя агента. Убедитесь, что вы точно ввели имя агента. Вот итоговый sql:

SELECT Skills.AgentName, Skills.Skill1, Skills.Skill2, Skills.Skill3 ОТ Skills WHERE (((Skills.AgentName) = [Агент]));

[1112 ] Если вы продолжите работу с этим запросом, я бы улучшил дизайн таблицы, разбив ее на таблицу навыков, таблицу операторов, таблицу навыков и агентов. Затем свяжите таблицы навыков и агентов с таблицей навыков и агентов во многих отношениях. Запрос на получение всех навыков агентов будет выглядеть в конструкторе следующим образом:

enter image description here

5
задан Jason Baker 11 October 2008 в 19:50
поделиться

3 ответа

Это раньше позволялось, но изменялось в gcc 3.4.

В шаблонном определении дисквалифицированные имена больше не будут находить членов зависимой основы (как указано [temp.dep]/3 в стандарте C++). Например,

    template <typename T> struct B {
      int m;
      int n;
      int f ();
      int g ();
    };
    int n;
    int g ();
    template <typename T> struct C : B<T> {
      void h ()
      {
        m = 0; // error
        f ();  // error
        n = 0; // ::n is modified
        g ();  // ::g is called
      }
    };

Необходимо сделать зависимого имен, например, путем добавления префикса их это->. Вот исправленное определение C:: h,

    template <typename T> void C<T>::h ()
    {
      this->m = 0;
      this->f ();
      this->n = 0
      this->g ();
    }
6
ответ дан 14 December 2019 в 01:21
поделиться

Можно хотеть читать о двухфазном поиске имени

0
ответ дан 14 December 2019 в 01:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: