Qt QTableView - Выравнивание флажка при использовании IsUserCheckable

Я использую флаг флажка QTableView Qt :: ItemIsUserCheckable для отображения флажка в ячейке таблицы.

Прочитав некоторые сведения о выравнивании в попытке центрировать флажок в ячейке, я возвращаю Qt :: AlignCenter как TextAlignmentRole из функции данных модели (). используя пространство имен std; класс Animal { public: virtual void makeSound () {cout

Рассмотрим следующий пример:

#include 
using namespace std;

class Animal
{
public:
    virtual void makeSound() {cout << "rawr" << endl;}
};

class Dog : public Animal
{
public:
    virtual void makeSound() {cout << "bark" << endl;}
};

int main()
{
    Animal animal;
    animal.makeSound();

    Dog dog;
    dog.makeSound();

    Animal badDog = Dog();
    badDog.makeSound();

    Animal* goodDog = new Dog();
    goodDog->makeSound();
}

Результат:

rawr
bark
rawr
bark

Но я подумал, что обязательно должен получиться "rawr bark bark bark". Что с badDog?


Обновление: Вас может заинтересовать другой мой вопрос .

52
задан Community 23 May 2017 в 02:34
поделиться