コンパイラはどのように4種類の関数定義を最適化しますか?引数の受け渡しの意味で最適化が行われていますか?関数の呼び出し時にconstポインタの引数はどのように最適化されますか?
int check_collision(const SDL_Rect const *A,const SDL_Rect const *B) { ... }
int check_collision(SDL_Rect const *A,SDL_Rect const *B) { ... }
int check_collision(const SDL_Rect *A, SDL_Rect const *B) { ... }
int check_collision(SDL_Rect *A, SDL_Rect *B) { ... }
そして、それは重要な場合は、これらの引数がfuncionを呼び出すときにコピーすることinefficent可能性がある場合には機能に読み取り専用の引数を渡すのが望ましい方法だろうどう思いますか?
[const-correctnessはコンパイラに最適化の余地を与えますか?](http://stackoverflow.com/questions/6313730/does-const-correctness-give-the-compiler-more-room-for最適化) – Nemo