したがって、派生クラスOrderedListのヘッダーファイルでは、コンパイラに基本クラスメソッドを使用するように指示することで、以前に作成したListクラスの機能の一部を継承していusing List<DataType>::examplefunction;
ます。オーバーライドされておらず、前述の方法で宣言されているすべての関数は、OrderedListのプライベートメンバーです。
したがって、プログラムを実行すると、MicrosoftVisualStudioで次のエラーが発生します。
エラーC2248:'OrderedList :: examplefunction':クラス'OrderedList'で宣言されたプライベートメンバーにアクセスできません
examplefunctionは、基本クラスListで公開されています。
これが私が取り組んでいるものの具体的な例です:
OrderedList.hでは、
private:
using List<DataType>::remove;
List.hで、
public:
void remove () throw ( logic_error );
そして、removeがList.cppのどこにあるか、
void List<DataType>::remove () throw ( logic_error )
{ // Do some operations//
}
また、OrderedListヘッダーファイルの宣言は次のようになります。
#include "List.cpp"
template < typename DataType, typename KeyType >
class OrderedList : public List<DataType>
誰かが私に問題を引き起こしているものを教えてくれるなら、それは大いにありがたいです。