1. ホーム
  2. c++

[解決済み] C++とC++の関数パラメータとしての'const int'と'int const'の比較

2022-07-24 10:09:34

疑問点

考えてみましょう。

int testfunc1 (const int a)
{
  return a;
}

int testfunc2 (int const a)
{
  return a;
}

この2つの機能はあらゆる面で同じなのでしょうか、それとも違いがあるのでしょうか?

C言語での回答に興味があるのですが、C++言語でも面白いものがあれば教えていただきたいです。

どのように解決するのですか?

const T そして T const は同じです。ポインタ型では、より複雑になります。

  1. const char* は定数へのポインタ char
  2. char const* は定数へのポインタ char
  3. char* const は、(ミュータブルな)定数ポインタです。 char

つまり、(1)と(2)は同一である。唯一、ポインタ(というよりポインティング)を作る方法は const とするのは、サフィックスである const .

このため、多くの人は常に const を活字の右側に置くことを好むのはこのためです (「East const」スタイル)。活字に対する位置が一定で覚えやすくなります (また、初心者に教えやすいという逸話もあります)。