問題タブ [const-method]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
73 参照

c++ - std::basic_string::operator[] が非 const メソッドでもあるのに、なぜ const メソッドなのですか?

http://cplusplus.com/reference/string/basic_string/operator[]

const結果が必要な場合に警告を回避し、キャストを軽減するために戻る 2 番目のバージョンがあると有利であることは理解していますconstが、関数が既にconstメソッド以外 (メソッドではなく結果) を提供している場合、const-を宣言するポイントは何ですか?結果方法const

0 投票する
2 に答える
160 参照

c++ - これは無限ループを引き起こす可能性がありますか?

関数の 2 番目のバージョンを定義するconst場合、これを実行しても安全であることが保証されていますか? 戻りたいので無限再帰があるように見えますconstが、呼び出すつもりの他の関数は非定数です。

g ++で動作しますが、これは安全ではないのではないかと心配しています.

0 投票する
2 に答える
1484 参照

c++ - ベクトル要素への非 const 参照を返す const メソッド

const クラスのメソッドからnon-const要素への参照を返す方法を理解するのに苦労しています。std::vector私がしようとしていることの簡単な例は、

私が目指している行動は、次のようなことができるようになりたいということです。

Eigenは同じタイプの動作を提供しますが、それを機能させる方法を理解できませんでした。

0 投票する
11 に答える
7963 参照

c++ - 非 const メソッドが非公開の場合に public const メソッドが呼び出されないのはなぜですか?

次のコードを検討してください。

コンパイラ エラーは次のとおりです。

エラー: 'void A::foo()' は非公開です。

しかし、プライベートなものを削除すると、うまくいきます。const 以外のメソッドが非公開の場合に public const メソッドが呼び出されないのはなぜですか?

言い換えれば、オーバーロードの解決がアクセス制御よりも先に行われるのはなぜでしょうか? 変ですね。一貫していると思いますか?コードが機能し、メソッドを追加すると、作業中のコードがまったくコンパイルされません。