問題タブ [function-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.
c++ - 代替関数の構文の違い
これら2つの機能の違いは何ですか?
c++ - 名前空間内のローカル関数宣言
そんな状況で
関数another_function
は名前空間内n
または外部で定義する必要がありますか? VS 2012 ( 11 月の CTPを使用) は、外部にある必要があると述べており、Mac の GCC 4.7.2 は内部にある必要があると述べています。間違ったことをすると、リンカーから未定義のシンボル エラーが発生します。
私は通常、GCC の方が標準に準拠していると信じていますが、これは C++ であり、確実なことはありません。
javascript - 三項演算子を使用した関数宣言
三項演算子を使用して関数名を宣言することは可能ですか?
c++ - 関数宣言の式
C++ (Microsoft Visual Studio) では、mystring.h に main_savitch_4::string::string(const char str[ ] = "") があり、mystring.cpp に追加されています。
次のエラーが表示されます。
正確には何がうまくいかないのですか?関数の説明で = の意味がわかりません
c++ - 関数宣言でのテンプレートキーワードの意味
「関数宣言でのテンプレートキーワードの使用」とはどういう意味ですか?
この例では、コンパイラエラーでエラーが発生します:「func」はテンプレート関数ではありません。
しかし、以下の例は問題ありません。
上記の場合の「テンプレート」の意味は何ですか?この関数がテンプレート関数であることを示しているだけですか?
javascript - すべての関数宣言と式は、舞台裏で呼び出されたnew Function()によって作成されていますか?
関数定義について説明しているECMA262v5スクリプトの部分を読んでいます。関数宣言と関数式の両方について、次のことが言及されています。
13.2で指定された新しいFunctionオブジェクトを作成した結果を返します。
セクション13.2で説明されていることの最初のステップは、「新しいネイティブECMAScriptオブジェクトを作成する...」そして「Fの[[Class]]内部プロパティを「Function」に設定する」ことです。
「新しいFuncitonオブジェクトを作成する」という言葉のせいで、舞台裏では、new Function(....)を呼び出して関数の宣言/式を作成したのではないかと思いました。
c++ - 関数宣言の戻り値の型のアンパサンドはどのように機能しますか?
このコードでは、なぜ f() が "double & f(..." と宣言されているのでしょうか? それは何を意味し、どのように機能するのでしょうか? 私の質問に対する答えを見つけるために何をグーグル検索すればよいかさえわかりません。助けてください。
アンパサンド記号が変数または関数のアドレスを意味することは知っていますが、関数を宣言するときにそれを記述する理由がわかりません。
c++ - コンストラクター定義を持つc++クラスですが、実装されているコードはありませんか?
単一の.hファイルに次のクラスがあります。
私が混乱しているように見えるのは、MyClass(const MyClass&)コピーコンストラクターとMyClass&operator =(const MyClass&)代入演算子のオーバーロードが実装されているコードがないことです。クラスには定義がありますが、他には何もありません。
私が分析しているコードでこれを見たことがあり、完全にコンパイルされます。私はC++を初めて使用し、これまでに見たすべての例で、以下のクラスと実装の両方、または別の.cppファイルで定義を見つけました。
では、なぜこのコードがコンパイルされるのか、そしてなぜ関数の宣言だけを含め、その実装は含めないのか、誰でも説明できますか?
ありがとうございました!!
c - 可変数の引数のプロトタイプがない関数の引数としてvoidへのポインター
任意の数のパラメーターを受け入れる必要がある関数があるとしましょう。ここで重要なのは、プロトタイプを宣言せず、コードで呼び出されたときに関数を作成できるようにすることです。ランダムな数のparametersparametersを受け取るためにvoidへのポインターを使用していますが、これを行う場合、最初のパラメーターのメモリーアドレスへの参照のみが渡されるため、それが機能するためには、宣言する必要がありますコードで呼び出すのと同じ順序の変数:
また、呼び出しと一致しないため、型なしで関数を宣言しています(暗黙的にも宣言されています)。
ここでの結果は、関数で送信された最初のパラメーターへの参照です。したがって、最初の関数呼び出しで次のアドレスを指すと機能しますが、2番目の呼び出しでは、cへの参照とメモリが何であれ取得します。それが配置される場所の前に。
パラメータを並べ替える方法が正しい方法を参照していることを知っている人はいますか?または、関数内の不明な数のパラメーターを受け取る効果的な方法はありますか?
注:(...)使用しないでください。
c++ - C++で問題を引き起こす別のヘッダーファイルの構造体
struct Tree
内に定義されているがありますClass Parser
。入力として受け取るメソッドが定義されParser
てTree
います。
すべてが正常に機能しているように見えました。しかし、それから私Tree
はクラスの外で使う必要がありました。そこでstruct Tree
、別のヘッダーで定義することにしました。このヘッダーをのヘッダーファイルにインクルードしましたParser
。パーサーのヘッダーファイルにエラーは表示されませんが、ソースファイルにEclipseのエラーが表示されます。メソッドを指すメンバー宣言が見つからないと言いInputTree
ます。
私の質問は、最初に、これは別のヘッダーで構造体を定義するための正しい戦略ですか?第二に、私は何が間違っているのですか?enum
第三に、クラス間で使用したいタイプもいくつかあります。どこで定義しますか?