1

良い一日、

私は素晴らしい文字列ライブラリを持っていますが、必要な多くの機能がありません。機能を追加するために拡張したいと考えています。String ライブラリ "WString.h" のコードは、このリンクにあります。

https://github.com/arduino/Arduino/blob/master/hardware/arduino/cores/arduino/WString.h

新しい関数を書きたかったのですが、ライブラリの一部であるため WString.h を変更したくありません。したがって、私は次のようなものを書きました:

class StringW: public String{

public:
StringW();
};  

ただし、これを行うと:

StringW myString="asd";

エラーが発生します:

Error 1 conversion from 'const char [4]' to non-scalar type 'StringW' requested

これが発生する理由を知ることができますか? 私の C++ の知識はまだかなり不安定です。子クラスは、= 演算子のオーバーロードを含む、親クラスの関数を自動的に継承するべきではありませんか? 子クラスの String クラスに、コンストラクターの一部として親クラスの = 演算子が表示されるようにするにはどうすればよいですか?!

4

0 に答える 0