問題タブ [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.
ruby - Ruby の用語 質問: これは、Ruby の宣言、定義、代入のすべてを同時に意味するものですか?
私が言うなら:
x = "abc"
以前にプログラムで x について何か言ったかどうかに関係なく、これは宣言、定義、代入のすべてが同時に行われているように見えます。
これは正しいです?
Ruby での宣言、定義、および代入の正しい用語が何であるか、または Ruby の動的型付けのためにこれらが区別されているかどうかはわかりません。
@tg: ポイント 2 について: x = "abc" ステートメントの前に x が存在したとしても、x = "abc" ステートメントを定義/再定義と呼ぶことはできませんか?
oop - メンバー変数をコンストラクターで初期化する必要があるのはなぜですか?
私が最初にオブジェクト指向プログラミング言語で働き始めたとき、私は次の規則を教えられました:
クラスでフィールドを宣言するときは、まだ初期化しないでください。コンストラクターでそれを行います。
C#の例:
しかし、最近誰かが私にそれをする理由を尋ねたとき、私は理由を思い付くことができませんでした。私はC#(または他のプログラミング言語、さらに言えば、これはすべてのオブジェクト指向言語で実行できると信じているため)の内部動作に精通していません。
では、なぜこれが行われるのですか?セキュリティですか?プロパティ?
c - この声明は何を宣言していますか?
この行の意味は何ですか?
2番目の質問:使用する利点は何ですか
簡単に
static char p[]
また、とはどう違いchar p[];
ますか?
c++ - C ++メソッド名は、ヘッダーのクラス名で修飾できますか?
簡単な質問ですが、これは有効なC ++ですか?
質問のポイント:クラス宣言内でメソッド名の前にクラス名と二重コロンを繰り返し使用することは有効ですか?
g++4.2.3を使用してこれを行うコードのコンパイルで問題が発生しました。コードを掘り下げて変更する前に、ここで構文を説明するものへの参照を確認したいと思います。または、コンパイラをダウングレードします。これはg++3.3.6でビルドされます。
私が得ているエラーは(大まかに):
私はグーグルをしましたが、何かを思い付くことができませんでした。私には基準がありません。たとえ基準を持っていたとしても、信頼できるものを見つけるのにかなりの時間がかかるでしょう。私はC++言語の弁護士ではありません。
javascript - JavaScript で複数の変数を宣言する
JavaScript では、次のように複数の変数を宣言できます。
...または次のように:
ある方法は他の方法よりも優れている/速いですか?
c++ - リンク時の C++ 関数の多重宣言エラー
C++を忘れているようです...
C でいくつかの関数を別のソースで宣言しようとしており、.h
必要に応じて適切なものを含めています。コンパイルはOKです。しかし、問題はリンク中にあり、リンカーは関数が既に定義されていると不平を言います。
関数を として定義しようとさえしextern
ましたが、(無駄な) 関数を宣言するだけで、実装が.c
.
これは私のコードの要約です:
common.h
module1.h
module2.h
module1.cpp
module2.cpp
コンパイルとリンケージ:
私が言ったように、それはOKをコンパイルします。module1.h
問題は、リンカが から 2つの実装された関数があることを「認識する」リンケージ中にありmodule1.h
ますmodule1.cpp
。module1.h
もう 1 つは一緒に を含めることmodule2.h
ですmodule2.cpp
。
関数が宣言されることになっていることは知っていますが、明らかに間違っています。誰かがそれがどこにあるのか指摘してもらえますか? 前もって感謝します。
c - C : ヘッダーのプロトタイプ宣言と実装のための関数宣言の違いは?
ヘッダーと .c ファイルでの関数プロトタイプの宣言の違いについて疑問に思っていました。いくつかのプロトタイプ関数を含むヘッダーと、これらの関数の実際の実装を含むいくつかの .c ファイルがあります。ヘッダーにいくつかの変更を加え、「__restrict」修飾子 (gcc によって認識される) のみを追加しました。私の質問は、「__restrict」修飾子を .c ファイルに配置する必要があるかどうかです (現在、コードはコンパイルされているため、答えはノーだと思いますが、ある程度の精度は高く評価されます)。
これはすべての C 修飾子で機能しますか? .c ファイルで同じことをしなくても、ヘッダーに「const」または「volatile」を追加できますか?
現在ヘッダーにある:
および実装ファイルで:
c++ - クラスの関数宣言の最後にある「const」の意味は?
const
このような宣言の意味は何ですか?const
混乱します。
c++ - typedef構造体の配列をCハードコーディングする
これは非常にばかげた質問であり、尋ねてもイライラします。どうか、ご容赦ください。今日は特にこの件について、私は非常に頭がおかしくなっています....
特定の typedef 構造体を持つライブラリがあります。基本的:
私が本当にやりたかったのは、ヘッダーで次の可変配列を宣言することでした。
(私は最近それをちょうどに切り替えてからcoords *MyCoords;
実行しましたMyCoords = new coords[4];
)
そして、初期化でいくつかの値をハードコーディングしたかったのです。
今日はただ頭を悩ませているに違いありません。MyCoords[0] = {0, 0}
上記の構文の一部について申し訳ありません。助けてくれてありがとう。一度にすべての値をハードコーディングすることさえ気にしません。私は今、MyCoords[0] = {0, 0}
仕事をするだけで大丈夫です。できMyCoords[0].x = 0; MyCoords[0].y = 0
ましたが、何が間違っているのかわかりません。どうもありがとう..