ホームページ > バックエンド開発 > C++ > C の組み込み型にはコンストラクターがありますか?

C の組み込み型にはコンストラクターがありますか?

Susan Sarandon
リリース: 2024-12-08 06:57:10
オリジナル
236 人が閲覧しました

Do Built-In Types in C   Have Constructors?

組み込み型にはコンストラクターがありますか?

一時的な int の値が 0 に初期化されるとき、それは int() 呼び出しによるものですか?デフォルトのコンストラクター?組み込み型にはコンストラクターがないため、これはよくある誤解です。

値の初期化とデフォルト コンストラクター

値の初期化は、比較的最近の概念であり、そのタイプに適切な値を持つ一時オブジェクト。組み込み型の場合、この値は整数の 0 です。

TC PL の声明

TC PL のセクション 10.4.2 では、組み込み型にもデフォルトがあると記載されています。コンストラクター。しかし、この記述は、C 98 および C 03 の文脈では間違いなく間違っています。

Bjarne Stroustrup 氏の説明

Bjarne Stroustrup 氏は、個人的に連絡を取ったところ、構築されたものであると考えていると明らかにしました。実際のコンストラクター呼び出しがないにもかかわらず、概念的な意味でのコンストラクターを持つ型。この概念化は、値の初期化などのコンストラクターのような動作に基づいています。

結論

技術的には、組み込み型にはコンストラクターがありません。ただし、それらを初期化するために使用される構文 (例: int{5}、int{}) はコンストラクターの構文と同じです。したがって、実際的な目的では、組み込み型には、値の初期化中に値を適切に初期化するデフォルトのコンストラクターがあると考えるのが合理的です。

以上がC の組み込み型にはコンストラクターがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート