■ このスレッドは過去ログ倉庫に格納されています
C++教わりに来ました!!
- 1 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:53:23.220 ID:FE2/UrXe0.net
- おはよう!
- 2 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:54:07.199 ID:FE2/UrXe0.net
- すみません。もう一度クラスのプライベートの書き方教えて
- 3 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:54:53.723 ID:hm19OT8L0.net
- クラスなんて一番最後にやればOK
- 4 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:55:34.821 ID:FE2/UrXe0.net
- private:
int A;
int B;
int C=A+B;//ここの書き方がわからない
これはどうやって書くんだっけ
- 5 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:56:10.677 ID:FE2/UrXe0.net
- >>3
実際はそうなの?最後なの?
- 6 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:56:28.135 ID:hm19OT8L0.net
- 全角でエラー出てるんじゃないの?
- 7 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:58:15.978 ID:hm19OT8L0.net
- >>5
プログラミングは作りたいソフトが完成すればOK
全てグローバル変数&関数で作って、困ったらプライベートを覚えろ
- 8 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:58:39.140 ID:FE2/UrXe0.net
- >>6
ソースにはちゃんと半角で書いてるよ!
privateなメンバ変数に式で値入れることできないよね
- 9 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:58:41.331 ID:UhKsZg5U0.net
- >>4
コンストラクタか初期化子に書く
- 10 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:59:22.341 ID:FE2/UrXe0.net
- >>167
それは間違いない
- 11 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 09:59:48.732 ID:FE2/UrXe0.net
- >>7
それは間違いない!
- 12 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:01:34.700 ID:FE2/UrXe0.net
- >>9
それか!
途中で、セッター使ってAの値変えたら、Cの値も変わらないといけないじゃん?
それは、Aのセッターに、C=A+Bって追加しなければだめ?
- 13 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:04:13.576 ID:UhKsZg5U0.net
- >>12
ちょと何言ってるかわからない
- 14 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:05:09.622 ID:hm19OT8L0.net
- >>13
俺もそう思った
- 15 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:06:42.244 ID:FE2/UrXe0.net
- >>13、>>14
ごめんねアスペで
ideoneでやる。まってて
- 16 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:08:35.464 ID:hm19OT8L0.net
- C=A+Bが欲しくてAかBが変更されたら、毎回計算し直さないと駄目だろ
- 17 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:15:50.801 ID:FE2/UrXe0.net
- https://ideone.com/AnUwdY
かいた
- 18 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:16:17.731 ID:FE2/UrXe0.net
- なんかエラー出たw
- 19 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:19:06.306 ID:hm19OT8L0.net
- 何か俺が書くc++とだいぶん違うから判らんわw
- 20 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:19:46.640 ID:FE2/UrXe0.net
- https://ideone.com/YJe6AC
- 21 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:19:58.525 ID:UTJjg3+y0.net
- hoge->setA(5);
// hoge->setA = 5;
- 22 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:22:00.619 ID:UhKsZg5U0.net
- getCでreturn A+B;てやればいいだけでは
- 23 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:25:22.412 ID:FE2/UrXe0.net
- >>22
そっか!そうだ!
カプセル化の醍醐味?
ユーザーはプライベートに何があるかなんて関係ないしな
- 24 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:25:27.657 ID:ZLnVhs5id.net
- …と思う吉宗であった
(__) .. ,--、、,,,,,,,,,,,,,,,,
{::::::::}三三三ミミミ`、、
(_) >ー-"'" ⌒,,ィシヽミミiミミ、
/ 三彡彡彡ィ`、ミミミ`、
(_) / シ彡彡彡彡ノ'ヽミミミ`、
,' ,三彡彡彡彡彡ソ,ー--'
○ l _ _ """'彡彡彡彡彡ノi
{;、 ';;;='''"""` 彡彡彡 - 、ノノi
kr) .ィェー 彡彡' r、ヽ}彡i
レ' .. シ彡' )ァ' /彡'
{_,,,、 ;、 シ彡ニンミミ{
l '''"::. 彡ミi
! ̄"` ...:::::::: ノ""{
l .......::::::::: / \_
`''ー- 、:::: / /
,,
- 25 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:27:56.191 ID:FE2/UrXe0.net
- エクセルのVBAみたいに、計算するたびに実行される関数とかない?
コンストラクタ関数みたいな
- 26 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:28:20.959 ID:FE2/UrXe0.net
- >>24
吉宗じゃないんですが……
- 27 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:31:04.933 ID:hm19OT8L0.net
- >>25
計算自体を関数にして内部でコールするか、遅延あるけど別スレッドで監視
- 28 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:31:17.774 ID:FE2/UrXe0.net
- https://ideone.com/YJe6AC
このえらーなんですか
- 29 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:31:56.777 ID:FE2/UrXe0.net
- >>27
内部で呼ぶってどういうこと?
- 30 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:34:11.863 ID:hm19OT8L0.net
- >>29
c=a+bをする時、c=sum(a,b)とかの関数作って関数内部で足し算させて足し算の後で全変数を再計算さでる
- 31 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:36:34.139 ID:UTJjg3+y0.net
- https://repl.it/repls/RundownRoastedVideogame
Immutable に行こうぜ(node.js)
- 32 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:38:47.850 ID:FE2/UrXe0.net
- >>31
なにこれ?
JS?ジャバスクリプト?
- 33 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:41:44.846 ID:FE2/UrXe0.net
- そーいえば、なんでMAIN関数の最後にはセミコロン必要ないの?
- 34 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:42:35.588 ID:hm19OT8L0.net
- 関数の最後は全部いらんだろ
- 35 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:49:58.738 ID:FE2/UrXe0.net
- プロトタイプ宣言した関数の定義には必要じゃなかった?
メンバ関数の定義とか
- 36 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:50:37.078 ID:UTJjg3+y0.net
- >>32
そう javascript
直感で cpp 書いた
https://ideone.com/B687LK
- 37 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:54:24.421 ID:FE2/UrXe0.net
- >>36
すごい!
getCの後にはセミコロンない
setAの後にはセミコロンある!
なんでかわかる?
- 38 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 10:56:31.247 ID:UTJjg3+y0.net
- >>37
わからない
シンタックスシュガーじゃね?
余分にあっても問題ないけど必要なところには必要
method のあとにはいらないから消していいっぽくね
- 39 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:00:18.088 ID:FE2/UrXe0.net
- >>38
何も処理をしない行の末尾ってことか!
ありがとう!
- 40 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:03:38.473 ID:vkr/63Sid.net
- 純仮想関数とかもってる抽象クラスと派生したクラスがあって
抽象クラス型に派生クラスでアップキャストしようとしたときに
派生クラスにしか無いメンバ変数って
アクセサ経由以外に使い方ってある?
- 41 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:05:33.965 ID:hm19OT8L0.net
- >>35
関数本体、定義は{}なしだろ
- 42 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:07:01.547 ID:hm19OT8L0.net
- >>35
定義は変数の宣言と同じで返り値の型を宣言しているからな
- 43 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:07:53.474 ID:FE2/UrXe0.net
- >>40
virtual関数は、オーバーライドしないと使えない関数だよ!
純仮想関数があるクラスは、オーバーライドされてなかったら使えない。
って習った
- 44 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:11:13.698 ID:vkr/63Sid.net
- >>43
確かにそうか、やっぱりアクセサをオーバーライドしないと無理ぽいね
サンクス
- 45 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:12:45.756 ID:hm19OT8L0.net
- vertualって使った事無いな
共用体は使った事あるけど
- 46 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:16:01.997 ID:FE2/UrXe0.net
- >>41
そっちだったか
定義と生成のちがい?
インスタンス生成とかいうよね
- 47 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:16:55.259 ID:0X+muhkJp.net
- C++で何するん
- 48 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:18:10.704 ID:FE2/UrXe0.net
- >>45
リトルエンディアンだから共用体の意味があるよね
- 49 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:19:01.330 ID:FE2/UrXe0.net
- >>47
OS作る
- 50 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:21:37.729 ID:FE2/UrXe0.net
- https://ideone.com/vcsspc
これどうすればいいの!
- 51 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:32:32.119 ID:bIhLbShM0.net
- return Cだから
- 52 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:35:25.105 ID:FE2/UrXe0.net
- >>51
エラー変わらない
https://ideone.com/nJlZae
- 53 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:41:51.691 ID:vkr/63Sid.net
- >>45
使わなくても継承、継承してけば同じなんだけど継承の先頭すっきりしてて
分かりやすいし
書くのもそんな手間かからないから便利よ
- 54 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:43:59.001 ID:FE2/UrXe0.net
- めしいってくる
- 55 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:45:05.117 ID:bIhLbShM0.net
- えらめ見ろよ
- 56 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 11:55:16.707 ID:vkr/63Sid.net
- >>54
さらっとみたけど初期化子でCに3入れてからsetA呼んでるだけだから
Cは3のままなんじゃないの?
setAで5入れてCに7入ってほしいなら
setAの定義にC=A+B入れとかないと
- 57 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:02:19.373 ID:3z6+r0oJ0.net
- コンストラクタのvoid外せ
- 58 :1:2018/10/19(金) 12:13:00.479 ID:cqrNWBvCd.net
- >>57
分かった。
- 59 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:14:29.034 ID:vkr/63Sid.net
- >>54
あとnew hogeのとこnew dataちがう?
- 60 :1:2018/10/19(金) 12:15:55.431 ID:cqrNWBvCd.net
- >>59
やっぱりね!
最初はそう思ってたんだよ!
- 61 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:18:55.281 ID:FE2/UrXe0.net
- できた!
https://ideone.com/rnJIDe
- 62 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:21:23.960 ID:FE2/UrXe0.net
- コンストラクタの中ってthisつかう?
ポインタの時はthisって知ってるんだけど、どういうときポインタ使うのかわからねぇわ!
- 63 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:22:06.998 ID:FE2/UrXe0.net
- getCはなんで
return this->C;
なの?
- 64 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:25:39.036 ID:vkr/63Sid.net
- ポインタは重いデータ扱うときに使ってるかな
getCとこのthisは無くてもいけるような
- 65 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:30:56.721 ID:FE2/UrXe0.net
- return C
でもできたわ
>>51なんやこいつ
- 66 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:33:36.149 ID:FQ0j35Nrr.net
- >>4
そもそもこういうのは使いたい時に関数内で計算するべきだと思う
AとBを変更したときにCの変更も必須になってバグの温床化するし
- 67 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:34:57.150 ID:FE2/UrXe0.net
- >>66
それどういうことなの?
さっきも言われたんだけど、理解できてないわ
クラスのメンバ変数に C を入れちゃダメってこと?
- 68 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:39:12.397 ID:hm19OT8L0.net
- >>53
継承する用事が無い
- 69 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:41:54.830 ID:FQ0j35Nrr.net
- >>67
例えば財布に百円玉3つと十円玉2つ入ってたとして
320円って書いたメモを一緒にしまっとくか?という話
所持金が知りたいならその場で見れば良いだけ
ただし、銀行に預けたお金とか、誰かに貸したお金みたいな
確認するのにとても労力のいるデータは持っていても良いと思う
C = A + B程度なら持つ必要ない
- 70 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:46:38.765 ID:FE2/UrXe0.net
- >>69
なるほど!
分かりやすい!ありがとう!!
- 71 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:48:44.910 ID:FE2/UrXe0.net
- vectorの記述で、初期化しないけど、とりあえず5個分取っておくってのはどうやって書くんだっけ
vector<long> hoge(5);
これじゃないよね
これは、5っていう値が入っている長さ1の配列が作られてるよね
- 72 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:55:11.040 ID:D3QkJ6TI0.net
- >>4は常にC=A+Bとなるように自動でCを設定したいってこと?
int getC() const { return A + B; }
これで十分じゃん
- 73 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:55:55.366 ID:D3QkJ6TI0.net
- >>71
hoge{5}だと要素が5だけの長さ1のvectorだが、
hoge(5)なら未初期化の5要素のvector
- 74 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 12:56:51.138 ID:8YGX561R0.net
- 本で勉強した方が早い気が……
- 75 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:06:03.793 ID:UTJjg3+y0.net
- https://github.com/CtrlGit/cpp-tutorial\
https://github.com/sinairv/Cpp-Tutorial-Samples
https://github.com/fffaraz/awesome-cpp#debug
こういうのたくさんあるんじゃね?
- 76 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:07:51.970 ID:8vKEc2mma.net
- おはよう恭太君
- 77 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:08:56.689 ID:FE2/UrXe0.net
- >>72
それで十二分だった!
>>73
わかった!
ありがとう!
- 78 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:10:59.558 ID:D3QkJ6TI0.net
- >>73をもう少し補足しておくと、
vector<long> hoge{5}; // vector<long>::vector( initializer_list<int> list ) を呼ぶので、「5」で初期化された要素が1つ
vector<long> hoge(5); // vector<long>::vector( size_t size ) を呼ぶので、デフォルト初期化された要素が5つ
こうなる
{}と()で使用するコンストラクタが違うっていうのがC++の厄介なところ
- 79 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:12:59.279 ID:FE2/UrXe0.net
- >>74
本は知りたいことが書いてない!とおもいます。
>>75
そのサイトたまに見てますよ!
VIPPERの方がわかりやすいよ
- 80 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:13:45.220 ID:FE2/UrXe0.net
- >>76
こんにちは!
- 81 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:14:04.983 ID:D3QkJ6TI0.net
- >>1にはこっちの方がずっと向いてるな
http://ezoeryou.github.io/cpp-book/C++11-Syntax-and-Feature.xhtml
- 82 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:34:32.539 ID:3z6+r0oJ0.net
- C++書くならEffective C++に一度で良いから目通してね
- 83 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:40:03.589 ID:Vl48OQjed.net
- >>1が今まで聞いた程度のことはビャーネのプログラミング言語C++にもっと詳細に書かれてるんだよなぁ
- 84 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:41:52.137 ID:J4qQUS9L0.net
- 問題は分かりやすいことと正しいことは別ってことやな
- 85 :1:2018/10/19(金) 13:41:52.796 ID:cqrNWBvCd.net
- Wi-Fi壊れた!
- 86 :1:2018/10/19(金) 13:45:28.190 ID:yfuRtHuB6.net
- なおった!
- 87 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:47:24.221 ID:yfuRtHuB6.net
- >>81
それ、少し見ることにするよ
- 88 :以下、?ちゃんねるからVIPがお送りします:2018/10/19(金) 13:54:00.959 ID:yfuRtHuB6.net
- namespace hoge{
~~~
~~~
}
って書き方であってる?
総レス数 88
22 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★