特定の暗黙の変換が期待どおりに機能しない理由を理解するのに問題があります。私は次のクラスに演算子wchar_t **()はconst wchar_tへの暗黙的な変換を提供できません** - なぜですか?
ref class ManagedWStringArrayWrapper
{
wchar_t** m_pointer;
public:
operator wchar_t**()
{
return m_pointer;
}
};
を持っているし、私も**これは、暗黙的にconstのwchar_tに変換するだろうと思った - しかし、それはしません。誰かが私に理由を教えてくれますか? T**
からT const**
へ
この演算子の使用方法のサンプルを提供できますか? –
これに関するC++ FAQに関する記事があります:http://www.parashift.com/c++-faq-lite/const-correctness.html#faq-18.17 –
+1興味深いです。単一レベルの間接化(wchar_t *)の場合、const wchar_t *()演算子は暗黙の変換を許可します。間違いが発生した複数のレベルの間接参照のみです。 C++の喜び – adelphus