1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

独習C++の勉強メモ_2章の1

Posted at

基本的な言語機能②についての勉強メモ!
#構造体(struct)
変数のセットを構造体変数として扱えば、新たにすべての変数を定義する必要がないってこと。ドット演算子で構造体変数からメンバー変数にアクセスし、アロー演算子で構造体変数のポインタ変数からメンバー変数にアクセスする。両者の違いに注意!
メンバー変数の初期化は構造体の定義で書いた順番に行われる。

Structure
struct s_name
{
type1 member1;
type1 member2;
...
}

下の一行が何を意味しているかわかればOK

pointer
product* ptr = &pen

#共用体(union)
メンバー変数のアドレスが共用されるタイプ。外で一つのメンバー変数の値が書き換えられると、(アドレスを共用してるので、当然)ほかのメンバー変数の中身も変化する。
まじでなんで必要なのか、、今は不明

#列挙体(enum class)
上の2つとは違いメンバー変数を持たない。通常0から開始の整数だが、好きな値に変更することも可能

Enumarator
enum class e_name{
enumerator1,
enumerator2 = value,
}

列挙体名と列挙値を::スコープ解決演算子でつなげて使う

use_enum
enum_class_name enum = enum_class_name::value;

#練習問題
##1
penをそのまま渡し、渡された先でアドレス演算子でpenのアドレスを取得、その先でpen->idで値を取得すればいい
##2
とばし
##3
(u.x.yは誤植でu.s.yか?)
Sの中まではUnionの影響範囲外なので、xはそのまま

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?