アカウント名:
パスワード:
CとC++は似て異なるものです。
少しでもC++を使うのなら、C++を完璧にマスターし完全なコーディングをしなければ、ぱっと見はわからない落とし穴を無意識のうちに掘りまくることになります。
ちなみに、例外を使わない、というのは大変ですよ。
私、
コンパイラの設定で例外をdisableし、newが失敗したときに例外をthrowする代わりにNULLを返すように設定
すればいいと思っていたんですが、
class foo ;void func1(foo arg) {// 中略} void func2(void) {
func1(one) ; // oneをコピーするときにメモリが足りず失敗したとき、どうなる?
そもそもclassを値渡しにする理由はなんでしょうか?値渡しを止めて、コンストラクタをpublic公開を止めてfooを生成するstaticのメンバ関数を用意するのではだめでしょうか?
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
普通のやつらの下を行け -- バッドノウハウ専門家
混ぜるな危険 (スコア:0)
CとC++は似て異なるものです。
少しでもC++を使うのなら、C++を完璧にマスターし完全なコーディングをしなければ、ぱっと見はわからない落とし穴を無意識のうちに掘りまくることになります。
ちなみに、例外を使わない、というのは大変ですよ。
私、
コンパイラの設定で例外をdisableし、
newが失敗したときに例外をthrowする代わりにNULLを返すように設定
すればいいと思っていたんですが、
値渡し仕分け (スコア:1)
そもそもclassを値渡しにする理由はなんでしょうか?
値渡しを止めて、コンストラクタをpublic公開を止めてfooを生成するstaticのメンバ関数を用意するのではだめでしょうか?
Re: (スコア:0)
もちろん、STLが値渡しだからといって巨大なクラスを直に値渡しするのは良くありませんが、それはまた別の話。