問題タブ [implicit-declaration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - コレクションの作成に使用される型の暗黙的な順序付けの概念のギャップ
この問題の解決策が明白すぎる場合、または以前にこのフォーラムで既に解決されている場合はご容赦ください (その場合は、その投稿を教えてください)。
クラスがあります
次に、同じソース ファイルで、この型のオブジェクトを順序付けする方法を定義する暗黙の値も定義します。
このフォーラムで提供されている次の解決策。
ここで、セット内の要素の数を特定の数に制限する特殊なセットを作成したいと考えています。したがって、次のような別のクラスを定義します。
私には、これが TreeSet をサブクラス化する正しい方法のように思えます。ただし、コンパイラは次のエラーをスローします。
(1) LengthContentsPair に暗黙の Ordering が定義されていません。
(2) コンストラクター TreeSet の引数が不十分: (暗黙の順序付け: Ordering[LengthContentsPair])scala.collection.immutable.TreeSet[LengthContentsPair]。値パラメーターの順序が指定されていません。
スコープ規則を間違って理解していませんか? とても簡単に感じますが、手がつけられません。
c - エラー: 関数 'g_slist_free_full' の暗黙の宣言
libfprintというソフトウェアをコンパイルしようとしています。別のマシンで正常にコンパイルしましたが、現在、多くのファイルで次のエラーが発生します。
何か案は?ありがとう !
編集
エラーをスローしている行の例を投稿します。
c - C: 関数の暗黙の宣言
私は、独自の RPC クライアントを開発する課題に取り組んでいます。サーバー部分をコンパイルすると、次の警告が表示されます。
メインの関数に続いて関数を作成すると、通常、この警告が表示されることを理解しています。例:
上記の場合、「doSomething」を作成した関数について文句を言う必要があります。
では、システム コールがメインの前に宣言された関数内にあるときに、システム コールが暗黙的に宣言されたとコンパイラが文句を言うのはなぜでしょうか? 以下は、システムコールが登場する関数です。
c - 暗黙の関数宣言が C で機能することがありますか?
以下がコンパイルされる理由を誰かに説明してもらえますか:
しかし、これはしません:
C/C++ では前方宣言が必要だと思っていましたが、ここに反例があります。暗黙の宣言は C でどのように機能しますか?
c - "strcpy" (C) の独自の実装が機能しません! 競合するタイプ。なんで?
私の大学は、プログラマーとして次C
のドキュメントから学ぶようにアドバイスしてくれました。 Java
J. Maassen 著。
C
46 ページ (PDF-page 47) で、Maassen はのstrcpy
関数の独自のバージョンを実装しようとしています。my_strcpy
この機能を使ってプログラムを書いてみました。
45 ページ (PDF-46 ページ) をご覧ください。ここで、Maassen は a -メソッドの最初のバージョンを紹介しましたstrcpy
。彼は を含めstdio.h
てコピーstrA
しましたstrB
。
それで、次のプログラムは動くはずですよね?
まあ、実際にはそうではありません。
このプログラムをコンパイルするたびに、次のエラーが発生するためです。
このプログラムが機能しないのはなぜですか? つまり、うまくいくはずですよね?
私はここstrcpy
で関数の同様の実装を見てきました。そして、その実装も機能していません! 私は同じエラーが発生しています!
どうしたの?
c++ - move コンストラクターが clang で宣言も削除もされないのはなぜですか?
次のクラスを検討してください。
with_copy
コピーコンストラクターはありますか? はい。明示的に定義されていました。with_copy
移動コンストラクターはありますか? いいえ。明示的なコピー コンストラクターは、それが生成されないようにします。with_copy
削除された移動コンストラクターはありますか? いいえ。移動コンストラクターがないことは、削除されたコンストラクターがあることと同じではありません。削除された移動コンストラクターは、コピーに退化するのではなく、不適切な形式で移動しようとします。with_copy
コピー可能ですか?はい。そのコピー コンストラクターはコピーに使用されます。with_copy
可動ですか?はい。そのコピー コンストラクターは移動に使用されます。
...そして今、トリッキーなもの。
foo
コピーコンストラクターはありますか? はい。unique_ptr
の削除されたコピーコンストラクターを呼び出すため、デフォルトの定義が不適切な形式になるため、削除されたものがあります。foo
移動コンストラクターはありますか? GCC は「はい」と答え、clang は「いいえ」と答えます。foo
削除された移動コンストラクターはありますか? GCCとclangの両方がノーと言います。foo
コピー可能ですか?いいえ。そのコピー コンストラクターは削除されます。foo
可動ですか?GCC は「はい」と答え、clang は「いいえ」と答えます。
(構築ではなく代入を考慮する場合、動作は似ています。)
私が見る限り、GCC は正しいです。foo
には、各メンバーに対して移動を実行する移動コンストラクターが必要です。このwith_copy
場合、これはコピーに退化します。Clang の動作は非常にばかげているように見えます。2 つの可動メンバーを持つ集合体がありますが、集合体は不動のレンガです。
誰が正しいですか?