web-dev-qa-db-ja.com

C ++でのクラス名の後のコロンの使用

これは、ブラックベリー10helloworldプログラムから抽出されたヘッダーファイルです。

#ifndef ApplicationUI_HPP_
#define ApplicationUI_HPP_

#include <QObject>

namespace bb
{
    namespace cascades
    {
        class Application;
        class LocaleHandler;
    }
}

class QTranslator;

/*!
 * @brief Application object
 *
 *
 */

class ApplicationUI : public QObject
{
    Q_OBJECT
public:
    ApplicationUI(bb::cascades::Application *app);
    virtual ~ApplicationUI() { }
private slots:
    void onSystemLanguageChanged();
private:
    QTranslator* m_pTranslator;
    bb::cascades::LocaleHandler* m_pLocaleHandler;
};

#endif /* ApplicationUI_HPP_ */

クラス名宣言直後のコロン演算子について混乱しています。

class ApplicationUI : public QObject

これは何を意味するのでしょうか?

23
DesirePRG

これは、ApplicationUIがクラスQObjectからすべてのメソッドとメンバー変数を継承することを意味します。 publicの使用は、パブリックメソッドとQObjectのメンバーがApplicationUIでもパブリックであることを意味します。

34
paddy

:の後にリストされているクラスは、ApplicationUIが継承するクラスです。

5
Bruce Dean

ここに簡単なコードスニペット:

using System;

namespace ProgramCall
{

class Class1
{

    public int Sum(int A, int B)
    {
        return A + B;
    }

    public float Sum(int A, float B)
    {
        return A + B;
    }
}

class Class2 : Class1
{
    public int Sum(int A, int B, int C)
    {
        return A + B + C;

    }
}

}
0
Vamsi Krishna