[過去ログ] 【初心者歓迎】C/C++室 Ver.106【環境依存OK】 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1: 2020/07/13(月)13:51 ID:WBkWHxcT(1/3) AAS
エスケープシーケンスやWin32APIなどの環境依存なものもOK
そのような質問は必ず環境を書きましょう
半角空白やタブでのインデントはスレに貼ると無くなります
コードを貼れる所
外部リンク:codepad.org
外部リンク:ideone.com
前スレ
【初心者歓迎】C/C++室 Ver.105【環境依存OK】
2chスレ:tech
2: 2020/07/13(月)13:53 ID:WBkWHxcT(2/3) AAS
C言語を256倍使うための本
外部リンク:www.%61mazon.co.jp/dp/4756100430
詳説 C++ 第2版
外部リンク:www.%61mazon.co.jp/dp/479732743X
3: 2020/07/13(月)14:08 ID:p1lvDPnd(1/2) AAS
C++20
外部リンク:ja.cppreference.com
外部リンク:ja.cppreference.com
豆
外部リンク:www.open-std.org
外部リンク:www.slideshare.net
外部リンク:ja.wikipedia.org
外部リンク:ja.wikipedia.org
4: 2020/07/13(月)14:09 ID:p1lvDPnd(2/2) AAS
禿
外部リンク:ja.wikipedia.org
外部リンク:ezoeryou.github.io
外部リンク:ezoeryou.github.io
外部リンク:ezoeryou.github.io
外部リンク:ezoeryou.github.io
5: 2020/07/13(月)14:14 ID:+mCuetAH(1/2) AAS
外部リンク:boostjp.github.io
外部リンク:cpprefjp.github.io
6: 2020/07/13(月)14:17 ID:+mCuetAH(2/2) AAS
Qt
外部リンク:www.qt.io
外部リンク:www.slideshare.net
wxWidgets
外部リンク:www.wxwidgets.org
外部リンク:github.com
Tcl/Tk
外部リンク:www.tcl.tk
7(1): 2020/07/13(月)16:28 ID:srh9sya6(1/2) AAS
メンバに自クラスの配列を持つクラスのメンバ配列の初期化はc++ではどうやりますか?Javaでは下のように出来てます。
☆Javaでこうなっています
class A {
protected A[] node = new A[3];
}
☆c++でこうしたらエラーになりました。
@a.hpp
class A {
public:
static A node[];
省5
8(1): 2020/07/13(月)16:38 ID:ny9O75E1(1/3) AAS
>>7
nodeは静的メンバ変数でいいの?
java同様、staticはすべてのクラスインスタンスで共通の変数って意味だけど。
9(1): 2020/07/13(月)16:41 ID:srh9sya6(2/2) AAS
>>8
ダメだとは思ってましたが、つけないと不完全な型名は使用できませんと怒られました。
c++ではメンバに自クラスの変数がいるとダメなのですか?
10: 2020/07/13(月)17:07 ID:WBkWHxcT(3/3) AAS
うまくいく例
class A {
public:
static A *node;
};
A *A::node = new A[3];
11: 2020/07/13(月)17:22 ID:ny9O75E1(2/3) AAS
staticにしない例
class A {
public:
A *node;
A();
};
A::A() {
node = new A[3];
}
12: 2020/07/13(月)17:27 ID:ny9O75E1(3/3) AAS
あ、ループしちゃった
13: 2020/07/13(月)17:30 ID:KVdg44rD(1) AAS
>>9
> c++ではメンバに自クラスの変数がいるとダメなのですか?
そりゃだめだよ、もしそんなのができたら
class A {
A a;
int b;
};
A x;
とした時に x.b; x.a.b; x.a.a.b; ... みたいに無限に int b; を作る羽目になるから。
Javaなどは
省5
14(2): 2020/07/13(月)17:33 ID:17o/9bhC(1/2) AAS
C++のクラス変数とJavaのクラス変数の違い、だっけ。
端的に「C++ではnewなしにクラス変数を宣言して使える」ようにするため。
Javaと対比しながら説明する能力がないんで中途半端で悪いけど。
15: 14 2020/07/13(月)19:29 ID:17o/9bhC(2/2) AAS
× 変数を宣言
○ 変数を定義
中途半端な上に間違っててすまぬ。
あまつさえ細かい訂正のために貴重な投稿枠の浪費までも。
16(1): 2020/07/14(火)08:27 ID:bhhAeN2N(1) AAS
>>14
クラス変数の問題ではなく、クラスのメンバとして配列を宣言した場合にC++では配列の実体をメンバとして持つのに対し、Javaでは配列の実体は別のところに作られて参照だけを持つというところでないの?
17: 2020/07/14(火)08:30 ID:5kZc9hZE(1) AAS
7の人です
みなさんありがとうございます
別のやり方考えます
18: 2020/07/14(火)09:28 ID:PHX4w74f(1) AAS
>>16
配列は関係ない
C++はクラス型のクラス変数を定義すると実体を持つから自分自身を定義できないってだけ
JavaやC#は実体じゃなくてポインタを持つだけだから問題ないってこと
19(1): 2020/07/14(火)12:52 ID:Mma3I+br(1) AAS
C/C++ はヌルポを敢えて使う
20(2): ◆QZaw55cn4c 2020/07/14(火)20:49 ID:M3PBKw+D(1) AAS
>>19
確かに仮想関数じゃなかったら普通に this に 0 を入れてもコールできますね…
外部リンク:ideone.com
上下前次1-新書関写板覧索設栞歴
あと 982 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.030s