テンプレート・パラメータ = void* のコンパイラ・バグ - ページ 2

 
fxsaber:

残念ながら、使い方の例を見たことがありません。

まあ、例えば、異なるタイプのオブジェクトの配列を作ることです。
 
Vladimir Simakov:
まあ、例えば、異なるタイプのオブジェクトの配列を作ることです。

上記は、私自身がその例を挙げました。でも、じゃあ、種類がわからないとどうやって参照するんだ?

 
fxsaber:

上記は、私自身がその例を挙げました。でも、それなら種類がわからないと、どうやって対処すればいいのでしょう?

わからないわけがない。つまり、彼らのリストは最終的なものなのです。このリストにある型、dynamic_castを試すことで対応できます。

 
Vladimir Simakov:

わからないわけがない。自分で入れたものだから、リストが有限なんです。dynamic_castを利用するとよいでしょう。

まあ、松葉杖の解決策ですねー。

 

例えばMQでは、ArrayCopyは void*をベースにしています。修正する必要があるときは、テンプレートを使っています。そして、すべてはもちろん、指定された型に厳格に則って動作します。

だから、便利なvoid*スクリプトがまだ見つからないんです。どうやら私は、この構成がもたらす可能性を狭く見ているようです。

 
fxsaber:

まあ、松葉杖の解決策ですねー。

まあ、男がそれを望むなら、なぜそれを台無しにするのですか?それから、なぜ松葉杖なのか。無料のリソースが許すなら、なぜそうしないのか?だから、Javaは一つの大きな松葉杖であり、アセンブラがルールなのです。結局、欲望はあっても可能性がない、理由がはっきりしない、よくない、直そうということになる。

 
Vladimir Simakov:

まあ、欲しい人がいるならば、なぜそれをダメにするのか。それから、なぜ失敗するのか?無料のリソースが許すのであれば、なぜそうしないのか。だから、Javaは一つの大きな松葉杖であり、アセンブラが一般的に支配しているのです。結局、欲望はあっても可能性がない、理由がはっきりしない、よくない、直そうということになる。

このチップに対してではありません。新しいこと、役に立つことを教えてもらうこと。そのために、いろいろな意味でこのフォーラムに参加しています。

 
fxsaber:

例えばMQでは、ArrayCopyはvoid*をベースにしています。修正する必要があるときは、テンプレートを使っています。そして、すべてはもちろん、指定された型に厳格に則って動作します。

しかし、ポインタは一切コピーされず、暗黙のうちにキャストされた互換性のあるものだけがコピーされます。 ユーザー定義関数も以前はすべてそのように動作し、非常に便利でした。 今は、テンプレートを使って作業するか、新しい配列に再コピーするかのどちらかです。 誰がなぜそれを削減しようとしたのかは不明です。

 
Alexey Navoykov:

しかし、ポインタは一切コピーせず、暗黙のうちにキャストされた互換性のあるものだけをコピーします。 ユーザー関数も以前はすべてそのように動作し、非常に便利でした。 今はテンプレートで作るか、新しい配列にコピーする必要があります。 誰がなぜそれを切り捨てたかったのか分かりませんが。

以前はどうだったんだろう。もともと型は合わせるものだったような気がします。

 
Alexey Navoykov:

コンパイルミス。 ビルド1961年。

そして、1961x32ではすべてがうまくいくのですが...。善哉善哉