3
2

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 5 years have passed since last update.

はじめてのC++【28日目】

Posted at

#はじめに
学習の仕方を変えようと思います。いままで、コメント欄で新しい機能などを皆様から教えていただいたときに、次の日にすべてを理解しようとしていました。しかし、この方法だと私の許容範囲を超えてしまい正しく理解できないと感じました。そこで、1日1~2項目を正しく理解できるように、その項目を深く調べようと思います。
##Stock List
ここでは、まだ少し不安な要素があるものをリストにする。
1日目から今日までの投稿を振り返ってみて見ようと思う。
オブジェクト指向関係は、後回しにするかな。静的メンバとか。
###未解決
int const * const * const ** const * p ←今日解決する
・静的メンバ 参照
std::string
i++++iの違い
nullptr
std::vector
std::array
enum class
・メモリ メモリの話
・スマートポインタの使い方 std::unique_ptr std::shared_ptr
std::quick_exit あとで読む
・初期化子
・みえる・みえない
・this
###解決
##ロベールのC++
###07-11 クラスの実体の動的確保

オブジェクトをnewするときにコンストラクタが、deleteするときにデストラクタが呼ばれる。
引数つきのコンストラクタも呼べる。

一度読んでみたがイマイチ理解ができなかったので、明日もう一度やってみる。
クラスの動的確保は重要そう。
##int const * const * const ** const * p
###constポインタの基本

int * p; //アドレスも中身も書き換え可能

const int * p; //アドレスは書き換え不可能 中身は書き換え可能

int * const p; //アドレスは書き換え可能 中身は書き換え不可能

const int * const p; // アドレスも中身も書き換え不可能

↑参照
英語を使った解読方法をコメント欄にて教えていただいたので紹介する。

int * p; //アドレスも中身も書き換え可能
| | |
| | `p` is
| |  |
|   pointer to
|
int 

これより、p is pointer to intという文がでる。

const int * p; //アドレスは書き換え不可能 中身は書き換え可能

この場合は、p is pointer to read only int

int * const p; //アドレスは書き換え可能 中身は書き換え不可能

p is read only pointer to int

const int * const p;  // アドレスも中身も書き換え不可能

p is read only pointer to read only int

英文の作り方は多分あっていると思います。英語が苦手なので、正しく意味があっているか不安です。

つまり、

int const * const * const * * const * p;

p is pointer to read-only pointer to pointer to read-only pointer to read-only pointer to read-only int
英文が読めないのですけど、
中身の書き変えOKで、アドレスも書き換え可能とコメント欄で教えてもらいました。

いい画像を頂いたのでここに掲載してもらいます。
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3331313333302f65323166326565322d373866322d323066392d383164632d3638346634393537333330662e706e67.png
この図を見てると、規則性がいくつか思いつきそう。

一番右にポインタがついていると、pは書き換え可能ということになる。
他にも見つけられそう。

#終わりに
英語嫌い
toいっぱいあってややこしいな。

3
2
16

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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?