[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 07/20 16:42 / Filesize : 347 KB / Number-of Response : 1000
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

0からの、超初心者C++相談室



1 名前:デフォルトの名無しさん [2018/11/12(月) 14:55:13.35 ID:Tf74ZWQr.net]
何にも知らない0からの出発、超初心者のためのC++相談室

965 名前:デフォルトの名無しさん mailto:sage [2024/12/26(木) 15:41:38.20 ID:NWZL3CyL.net]
基本わかったら作り始めたらいい
チューナーボードのsdkのマニュアル読め
最初は出来損ないでいいから完成させろ

966 名前:デフォルトの名無しさん mailto:sage [2024/12/26(木) 22:37:43.96 ID:Bko97FmB.net]
lower_bound x以上で最小
upper_bound xより上で最小
upper_bound - 1 x以下で最大
は記述がありましたが
lower_bound - 1をググってるのですが出てきません
多分x未満で最大だと思うのですがあってますか?

967 名前:デフォルトの名無しさん mailto:sage [2024/12/26(木) 23:19:55.33 ID:/ipDVGme.net]
+

968 名前:デフォルトの名無しさん mailto:sage [2024/12/26(木) 23:49:39.69 ID:ijj1Fuin.net]
>>966
サンプルコード書いて確かめなよ

969 名前:デフォルトの名無しさん [2024/12/27(金) 09:37:21.60 ID:O2xssw1P.net]
>>965
sdkのマニュアルとかないボードみたいなんでテレビ視聴用のテストソフトコード見ながら自分が欲しいもの書いてみます。

ところでvisual studio使ったことないのでわからないのですがこのソフトの書き方、読み方しっかり学べる本ってないでしょうか?今までテキストエディタで書いてg++でやってたからビルドとテストがあるぐらいしかわかりません。

970 名前:はちみつ餃子 mailto:sage [2024/12/27(金) 10:42:45.43 ID:sDceJMaF.net]
>>969
マイクロソフトのサイトを見ながら学習するのがよいと思う。
細かな部分はバージョンによっても変わるし、本を買ってもすぐ時代遅れになるから。

971 名前:デフォルトの名無しさん mailto:sage [2025/02/25(火) 14:39:59.78 ID:hnV+oLEs.net]
おちんちぇん

972 名前:デフォルトの名無しさん mailto:sage [2025/03/31(月) 15:48:05.05 ID:5n9vvRfi.net]
だいぶ遅レスですまんが、VSはブレークポイント入れるとか実行とかの基本的な操作は昔から全く変わってないよ
自分は職場で教わった部分もあるからどの本がいいとかはわからん

973 名前:デフォルトの名無しさん [2025/04/11(金) 08:37:40.21 ID:DDyd6LX4.net]
え?お前らに聞くけどな人殺しとか前科者とかナマポとか精神障碍者とか
そういう社会的に終わってる奴が1日中何してるか考えたことある?
ない?ある?ない?どっち?え?ない?教えたるわ。ここや。こういう掲示板。
ありあまる時間を使って24時間悪口書いて文句垂れて世の中終わった終わった言うてる。
すでに終わってる奴が世の中終わってほしいから終わってる終わってる言うてるだけ。
気づけよ?お前ら。そろそろ。もう5ちゃんの平均年齢65歳ぐらいやぞ。
気付いてないのは団塊ジュニア。若者だらけと思ってるのは氷河期。
ゆとり以下は5ちゃんなんて見てないでもう。
しかも自分?もう文末にwとかwwwとか書くの古いで?
それ20年前の電車男の時代に流行ってた書き方な。
うはwwwおkとか、ちょっwwwとか、おまwwwとか
気でも狂ってるんかってぐらいに書かれてた暗黒時代な。
こんなんいまだに使ってるのお前だけやで。もう一回言うぞ?お前だけや。
気付けよ?いい加減。な!
あ?なに?このコピペ長文長い?お前が5ちゃんの2行3行レスしか読まない
人生を四半世紀(25年のことな)送ってて普通の文章読めんようになってるだけや!
わかったか?じゃあの!



974 名前:デフォルトの名無しさん mailto:sage [2025/04/11(金) 13:09:16.48 ID:/8vt7NNX.net]
っ鏡

975 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 21:33:04.53 ID:2tfOuRHs.net]
C++なんてやめとけ
仕事で仕方なく触るならお気の毒だが
趣味ならもっとモダンな言語にしとけ

976 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 00:29:20.64 ID:DSrU4IgO.net]
cppのあとc#やってみて思ったのは、cppはとにかくたくさん書く必要があるってこと。

977 名前:はちみつ餃子 mailto:sage [2025/04/19(土) 10:45:36.30 ID:cJmAkIgz.net]
cpp は C preprocessor の略だよ。

978 名前:デフォルトの名無しさん [2025/04/19(土) 12:22:27.38 ID:MUEmr0y1.net]
初代のC++はpreprocessorだったんですねわかります

979 名前: mailto:sage [2025/04/19(土) 17:31:17.09 ID:FLUMnkWw.net]
プリプロセッサというか、Cへのトランスレータだったみたいよ

980 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2025/04/19(土) 18:46:21.80 ID:cJmAkIgz.net]
>>979
いや、 C++ の前身である C with Classes の最初の処理系は Cpre と名付けられていて、明らかにプリプロセッサを指向してる。
このことじゃない?

981 名前: mailto:sage [2025/04/19(土) 19:59:57.03 ID:nvjdNFmD.net]
>>980
かもしれません
30年以上前のうろ覚えなので

982 名前:はちみつ餃子 mailto:sage [2025/04/19(土) 20:26:59.32 ID:cJmAkIgz.net]
C++ と呼ぶようになってからの処理系 CFront もそれはそれで思想としては C コンパイラをジェネレータとして使う (移植性が高いから) というものであって言語としての解釈は CFront がやるし C は中間表現にすぎないからトランスレータと呼ぶのが適切かどうかは微妙なところ。
Clang のことを LLVM-IR へのトランスレータとは普通は言わないみたいな感じ。
いや、変換してるからトランスレータには違いないんだろうけどさ。

983 名前:デフォルトの名無しさん [2025/04/19(土) 20:34:02.90 ID:Rs10e6Jw.net]
つまりNim最強ですねわかります



984 名前:デフォルトの名無しさん mailto:sage [2025/04/28(月) 09:51:37.89 ID:PR6E6U1X.net]
C++で匿名クラスを使ってみたいのですが、試したところ
class {
public:
void print() { std::cout << "Hello!\n"; }
} obj;
obj.print()
は動きました。それならば
auto objp = new class {
public:
void print() { std::cout << "Hello!\n"; }
} ();
objp->print();
あたりが動くのかな、と思いましたがコンパイルでエラーになってしまいます
anon_class_test.cpp:4:19: error: declaration of anonymous class must be a definition
4 | auto objp = new class {
| ^
anon_class_test.cpp:7:7: error: expected a type
7 | } ();
| ^

正しい書き方があれば教えていただけないでしょうか?
ちなみに、Java (Android)でのコールバックの登録であるような、インラインで無名の
クラスのオブジェクトを定義・生成して渡すような書き方がC++でもできるのかな、
という疑問があり、それの第一歩的な感じなのですが

985 名前:デフォルトの名無しさん mailto:sage [2025/04/28(月) 10:00:18.82 ID:+jC2JIL+.net]
匿名クラスってCで言う構造体やん

986 名前:デフォルトの名無しさん mailto:sage [2025/04/28(月) 10:12:11.66 ID:RRBAM2hD.net]
>>984
newの後にクラス定義は書けない
匿名インラインでなんちゃらしたい場合はラムダを使う

987 名前:はちみつ餃子 mailto:sage [2025/04/28(月) 12:35:00.60 ID:clGXfLYj.net]
>>984
簡潔な回答としては「できない」ということになる。
関数ひとつで終わるような簡単なコールバックならラムダ式で渡せるように設計する。
もう少し複雑なものになると……式の中に定義を書けるのは見通しが悪いし、出来てしまう Java のほうが良くなさそう。
別の場所 (といっても直前で良いけれど) で定義すれば何も困らないよ。

質問の本筋ではないが気になる点として、
new で生成したものはどこかで delete しなきゃならないからそのコードだけから判断できる範囲ではなんだか筋が悪そうに見える。
つまりそもそも new する意味がないんじゃない? と思う。

988 名前:デフォルトの名無しさん mailto:sage [2025/04/28(月) 13:12:28.38 ID:PR6E6U1X.net]
>>986 >>987 なるほど、ありがとうございます 

>>987
>別の場所 (といっても直前で良いけれど) で定義すれば何も困らないよ。
はい、それで行ってみようかとおもいます

>new で生成したものはどこかで delete しなきゃならないから
はい、そういうわけでshared_ptrで... そのためにも型の名前はあった方がいいですね

諸般の事情でJavaとC++のコードを間接的に共有しようとしていまして、
ならばコードのスタイルもできるだけ似せようかなと、思ったのでした

989 名前:デフォルトの名無しさん mailto:sage [2025/05/02(金) 09:24:43.58 ID:k5bGwZZ0.net]
size_t を返す hoge.count() みたいなのがあって
for(int i = hoge.count(); --i >= 0){...} と描くと
型が違うって怒られるのですが
for(int i = (int)hoge.count(); --i >= 0){...}
for(unsigned long i = (unsigned long)hoge.count(); --i >= 0){...}
for(size_t i = hoge.count(); --i >= 0){...}
どれが正解?

990 名前:はちみつ餃子 mailto:sage [2025/05/02(金) 09:54:10.74 ID:LUc36ySD.net]
>>989
どこでどのように型が合わないのか説明して。

991 名前:はちみつ餃子 mailto:sage [2025/05/02(金) 11:40:02.44 ID:n0wyIh3y.net]
>>989
for 文の括弧の中はセミコロンで区切られた三つの節を持つ形式である必要があるが、二つの節しかないのが根本的な間違い。

そんでそれを脇に置くとして、ループカウンタ i が unsigned であるときに --i >= 0 という式で判定しようとするのが間違い。
0 以下になることはありえないのだから判定の意味がない。 (無限ループを意図したのでない限りは。)

整数を別の整数型に型変換したときに型変換後の型で表現可能な範囲の値であるならば同じ数値のままであることは保証されて何も問題はない。
逆に言えば扱う値の範囲次第では違う数値に変わったり未定義になったりすることがある。
hoge.count() が返す型が size_t なら最後まで size_t で扱うのが基本的には好ましい。
値が取りうる範囲を把握しているなら問題を起こさない範囲で適切に型変換するのはプログラマの裁量による。
状況によって判断するしかない。

992 名前:デフォルトの名無しさん mailto:sage [2025/05/02(金) 12:05:12.81 ID:b7t9YOim.net]
我慢できなくなって説明しちゃうはちみつさん

993 名前:デフォルトの名無しさん mailto:sage [2025/05/02(金) 19:42:35.68 ID:rPO248eK.net]
for(long long i = (long long)hoge.count(); --i >= 0; ){...}



994 名前:デフォルトの名無しさん mailto:sage [2025/05/04(日) 09:19:50.28 ID:RkNPiBO2.net]
Rust使えばもっと楽になるかと思いきや
面倒が増えただけだったでござる

995 名前:デフォルトの名無しさん mailto:sage [2025/05/04(日) 10:01:55.29 ID:CPTw2I9A.net]
>size_t を返す hoge.count() みたいなのがあって
>for(int i = hoge.count(); --i >= 0){...}

Rustなら単に (0..hoge.count()).rev()

996 名前:はちみつ餃子 mailto:sage [2025/05/04(日) 11:51:46.75 ID:w7r9Yiaa.net]
全体としては Rust のほうがだいぶん楽だと思うけどなぁ。
好みや慣れの要素があるから単純には比較できないのだけれど。

997 名前:デフォルトの名無しさん mailto:sage [2025/05/04(日) 11:59:34.01 ID:RkNPiBO2.net]
はちみつさんもRust使ってるんだね

998 名前:デフォルトの名無しさん [2025/05/04(日) 11:59:44.18 ID:RkNPiBO2.net]
かわいい

999 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2364日 21時間 4分 32秒






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<347KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef