- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
879 :デフォルトの名無しさん[sage]:2014/11/24(月) 00:32:59.83 ID:VgrvAE4c - 例えば何らかの情報を保持する構造体の中のメンバの一つに
bool型が有ったとして、その構造体に完全にデータを代入するまでは bool型メンバーの値も未定なので、そういう場合にundefinedみたいな 状態があればいいと思うんですが、皆さんそんなことないですか?
|
- リーダブルコーディング技術スレ
266 :デフォルトの名無しさん[sage]:2014/11/24(月) 00:50:24.64 ID:VgrvAE4c - >>246
エディタの置換コマンドで 一行に置換してしまえばいいんじゃないか?
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
883 :デフォルトの名無しさん[sage]:2014/11/24(月) 01:23:16.88 ID:VgrvAE4c - >>882
C#のbool?をC++で使うにはどうすればよいでしょうか?
|
- Visual Studio 2013 SP5©2ch.net
613 :デフォルトの名無しさん[sage]:2014/11/24(月) 15:31:46.02 ID:VgrvAE4c - 新しい開発環境を使ったら、
古いのは使いたくないよなあ。 でもvs2003から2013まで 全部持っている俺。 収集マニアのようなもの。
|
- VB.NET質問スレ(Part41)
922 :デフォルトの名無しさん[sage]:2014/11/24(月) 15:39:43.06 ID:VgrvAE4c - >>919
おっさんっていうのは失礼だろ。 魔界の先生とか師匠とか言えよ。
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
895 :デフォルトの名無しさん[sage]:2014/11/24(月) 18:30:37.50 ID:VgrvAE4c - class B;
class A{ public: // B b; //(1) error C2079: 'A::b' が 未定義の class 'B' で使用しています。 B *pb; //(2) OK }; class B{ public: A a; }; void main(){ B b; } 典型的な循環参照だと思うのですが、(1)でビルドすることは絶対に不可能でしょうか? VS2013C++です。
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
897 :デフォルトの名無しさん[sage]:2014/11/24(月) 18:51:38.30 ID:VgrvAE4c - >>896
レスありがとうございます。さっそく試したのですが、 VS2013C++では、 error C2079: 'A::b' が 未定義の class 'B' で使用しています。 となります。
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
899 :デフォルトの名無しさん[sage]:2014/11/24(月) 19:06:15.00 ID:VgrvAE4c - >>898
そうですか。不可能の理由はサイズが決められないからですよね? でも、たとえばClassBのサイズを100バイトくらいと仮定して ClassAを作ってみて、それで余ればBのサイズを少し減らして 調整すれば、原理的にはA、Bを最適なサイズに確保できると思うんですが、 間違っていますか? コンパイラはそんな事しないんでしょうか?
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
902 :デフォルトの名無しさん[sage]:2014/11/24(月) 19:21:08.49 ID:VgrvAE4c - >>900>>901
ああ、そういうことですか 長年の疑問が解消しました。ありがとうございました。 ポインタにします。
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
904 :デフォルトの名無しさん[sage]:2014/11/24(月) 20:34:31.39 ID:VgrvAE4c - >>903
Basicです。 もう一つ教えて下さい。 class A{ public: int i; }; class B{ public: A *pa; }; A funcA(){ A a; a.i = 100; return a; } B funcB(){ B b; b.pa = &funcA(); // これは問題ないですか? return b; } void main(){ B b = funcB(); printf("i=%d\n", b.pa->i); } VS2013C++で実行したら100と表示されるのですが、この プログラムに何か問題ありますか? 特に &funcA()の部分が自分でも良く分りません。適当に&を付けたら 実行できたのですが、問題無いですか?
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
907 :デフォルトの名無しさん[sage]:2014/11/24(月) 20:46:42.95 ID:VgrvAE4c - >>905
>そのオブジェクトはfuncBを抜けた時点で消滅してるから問題あり やっぱり、そうですねよ。 >>906 funcBの中でnew Aして、そこにfuncA()の中身を代入するべきですよね。 それ以外に、スマートな書き方ありますか?
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
909 :デフォルトの名無しさん[sage]:2014/11/24(月) 21:07:59.02 ID:VgrvAE4c - >>908
アドバイス有難うございます。 私は生ポのほうが好きで、スマポというのは使ったことが有りません。 素人では有りません。馬鹿にしないでください。
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
914 :デフォルトの名無しさん[sage]:2014/11/24(月) 21:21:41.92 ID:VgrvAE4c - >>910
素人ではありません。ちょっとした勘違いです。 >>911 サンプルありがとうございました。VS2013C++では、 IntelliSense: 参照の既定の初期化は使用できません IntelliSense: 参照の既定の初期化は使用できません error C2440: '初期化中' : 'int' から 'B &' に変換できません。 error C2440: '初期化中' : 'int' から 'A &' に変換できません。 error C2439: 'B::a' : 指定されたメンバーは初期化できません。 error C2439: 'A::rb' : 指定されたメンバーは初期化できません。 残念ながらビルド出来ませんでした。
|
- 【初心者歓迎】C/C++室 Ver.93【環境依存OK】
918 :デフォルトの名無しさん[sage]:2014/11/24(月) 21:31:27.67 ID:VgrvAE4c - >>915
サンプルありがとうございました。 残念ながら、 error C2065: 'b' : 定義されていない識別子です。 となり、ビルドできません。
|