[解決済み】C++やCでfoo(void)とfoo()は違うのですか?
2022-04-02 02:20:35
質問
次の2つの関数定義について考えてみよう。
void foo() { }
void foo(void) { }
この2つは何か違いがあるのでしょうか?もしそうでないなら、なぜ
void
の議論があるのでしょうか?美的な理由?
解決方法は?
で C :
-
void foo()
は関数を意味します。foo
不特定の型の不特定の数の引数を取ること。 -
void foo(void)
は、関数foo
引数を取らない。
で C++ :
-
void foo()
は関数を意味します。foo
引数を取らない。 -
void foo(void)
は関数を意味します。foo
引数を取らない。
書くことによって
foo(void)
したがって、両方の言語で同じ解釈をすることができ、ヘッダを多言語化することができます (ただし、ヘッダを本当に多言語化するには、通常さらにいくつかのことを行う必要があります。
extern "C"
C++をコンパイルしている場合)。
関連
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】クラステンプレートの使用にはテンプレート引数リストが必要です
-
[解決済み] 解決済み] `pthread_create' への未定義の参照 [重複] [重複
-
[解決済み】エラー。引数リストに一致するコンストラクタのインスタンスがない
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] const int*、const int * const、int const *の違いは何ですか?
-
[解決済み] C++11の'typedef'と'using'の違いは何ですか?
-
[解決済み] CとC++でmain()は何を返すべきですか?
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】抽象クラス型の無効なnew-expression
-
[解決済み】Cygwin Make bash コマンドが見つかりません。
-
[解決済み】「corrupted size vs. prev_size」glibc エラーを理解する。
-
[解決済み】1つ以上の多重定義されたシンボルが見つかる
-
[解決済み】クラスのコンストラクタへの未定義参照、.cppファイルの修正も含む
-
[解決済み】Visual Studioのデバッガーエラー。プログラムを開始できません 指定されたファイルが見つかりません
-
[解決済み] 警告:暗黙の定数変換でのオーバーフロー
-
[解決済み] 配列のベクトルを扱う正しい方法
-
[解決済み】'std::cout'への未定義の参照
-
[解決済み】C言語のvoid引数「void foo(void)」と「void foo()」はどちらが良いのか?) [重複している]。