!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part163
https://mevius.5ch.net/test/read.cgi/tech/1672409791/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
C++相談室 part164
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 33da-QP0H)
2023/05/09(火) 11:50:52.06ID:EYc2I7oW0545デフォルトの名無しさん (ワッチョイ 0710-PxlL)
2023/07/25(火) 12:01:03.86ID:RkQ0FrMx0546デフォルトの名無しさん (ワッチョイ dff0-POqA)
2023/07/25(火) 12:08:13.03ID:YIf2r9Dz0 VC++6.0という大昔にデファクトスタンダードだったコンパイラだ
547デフォルトの名無しさん (ワッチョイ 0710-PxlL)
2023/07/25(火) 12:10:00.81ID:RkQ0FrMx0 >>546
ほんとにごめん、何の意味があるの?
ほんとにごめん、何の意味があるの?
548デフォルトの名無しさん (ワッチョイ dff0-POqA)
2023/07/25(火) 12:12:51.37ID:YIf2r9Dz0 例外飛ばすと自動変数の破棄全部ふっ飛ばして戻ってくる酷いポンコツだったな
よくこんなの皆つかってたなというかコレしかなかったからな
よくこんなの皆つかってたなというかコレしかなかったからな
549はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/25(火) 12:13:49.52ID:akUn9hsS0550デフォルトの名無しさん (ワッチョイ dff0-POqA)
2023/07/25(火) 12:14:32.19ID:YIf2r9Dz0551デフォルトの名無しさん (ワッチョイ 0710-PxlL)
2023/07/25(火) 12:24:31.68ID:RkQ0FrMx0552デフォルトの名無しさん (ワッチョイ 0710-PxlL)
2023/07/25(火) 12:39:41.95ID:RkQ0FrMx0 『for内スコープ』の仕様にvc6は未対応だ、という事実を認識し
責任者がvc6を選択した案件で納品する
なら、その条件に従って書く(つまらないつまづきに繋がる書き方を避ける)のが他者に対して親切な技術者だと思うが
「そういう話はマ板で」か
責任者がvc6を選択した案件で納品する
なら、その条件に従って書く(つまらないつまづきに繋がる書き方を避ける)のが他者に対して親切な技術者だと思うが
「そういう話はマ板で」か
553はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/25(火) 12:56:14.20ID:akUn9hsS0 >>551
言語仕様が改訂されたんだよ。
C++98 が成立するちょっと前まで for 文の外側のブロックをスコープとするルールで正しかった。
ARM (The Annotated C++ Reference Manual) でも旧ルールで説明されている。
VC の出来が悪かったのは事実だと思うが
スコープルールに関しては互換性を是とするウィンドウズの価値観に合わせて
意図的に変更を遅らせたのだと思う。
言語仕様が改訂されたんだよ。
C++98 が成立するちょっと前まで for 文の外側のブロックをスコープとするルールで正しかった。
ARM (The Annotated C++ Reference Manual) でも旧ルールで説明されている。
VC の出来が悪かったのは事実だと思うが
スコープルールに関しては互換性を是とするウィンドウズの価値観に合わせて
意図的に変更を遅らせたのだと思う。
554デフォルトの名無しさん (ワイーワ2 FF9f-fo+T)
2023/07/25(火) 14:00:38.34ID:uSv6E5akF いと懐かしき
555デフォルトの名無しさん (ワッチョイ 8702-Jlgx)
2023/07/25(火) 14:23:07.06ID:kV+p+cpE0 Visual C++ 6.0がリリースされたのが1998年じゃん
25年前じゃん。全然最近じゃないじゃん
遠い過去のことをつい最近って話すのはやめてほしいね
25年前じゃん。全然最近じゃないじゃん
遠い過去のことをつい最近って話すのはやめてほしいね
556デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/25(火) 14:31:50.00ID:MikqYz6X0 >>555
だまれ小僧! 最近じゃよ
だまれ小僧! 最近じゃよ
557デフォルトの名無しさん (ワッチョイ df32-8suU)
2023/07/25(火) 14:44:27.15ID:vokyohz+0 20年くらいまえのソースコードだったら
読む機会がないわけでもないからなぁ。
最近と言えるかどうかはともかくとして
経緯を知っておくに越したことはない
読む機会がないわけでもないからなぁ。
最近と言えるかどうかはともかくとして
経緯を知っておくに越したことはない
558デフォルトの名無しさん (アウアウウー Sa2b-QKap)
2023/07/25(火) 14:44:43.95ID:iTChcdyRa 25年前に30代だった人の多いスレ
559デフォルトの名無しさん (ラクッペペ MM8f-pwGU)
2023/07/25(火) 14:54:13.97ID:218oSqZIM 現役世代なら25年前なら20代
560デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/25(火) 14:55:29.80ID:MikqYz6X0 だまれ小僧ども!
561デフォルトの名無しさん (ワッチョイ dff0-FYg4)
2023/07/25(火) 16:16:06.83ID:uXZxGhnB0 おじいちゃんかな入力使ってそう
562デフォルトの名無しさん (ワッチョイ 473e-8suU)
2023/07/25(火) 16:50:53.20ID:akUn9hsS0 リアルで トントカイモ をやったことある世代だわ……
563デフォルトの名無しさん (ワッチョイ 0710-PxlL)
2023/07/25(火) 20:33:32.87ID:RkQ0FrMx0564デフォルトの名無しさん (ワッチョイ bf79-mRrB)
2023/07/25(火) 21:15:39.67ID:2EbZvvbp0 (昔話うぜー)
565はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/25(火) 21:54:33.88ID:akUn9hsS0 >>563
古い規格に基づいたコードが消滅しているならそれでもいいけどさ。
古い規格に基づいたコードが消滅しているならそれでもいいけどさ。
566デフォルトの名無しさん (ワッチョイ a728-Nt2/)
2023/07/25(火) 22:52:02.65ID:ngER/Udx0567はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/25(火) 23:10:43.20ID:akUn9hsS0 アドレスとエイリアスは別枠なんだわ。
ポインタを数値として表示させると同じなのに == で比較すると偽値 (エイリアスではない) ということがあり得る。
pointer provenance の概念について調べてみると面白いかもね。
ポインタを数値として表示させると同じなのに == で比較すると偽値 (エイリアスではない) ということがあり得る。
pointer provenance の概念について調べてみると面白いかもね。
568デフォルトの名無しさん (ラクッペペ MM8f-pwGU)
2023/07/26(水) 07:52:30.48ID:Ymbp6+unM 古いコードに執着しはじめるならもういい加減引退した方がいい
569はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/26(水) 13:05:53.40ID:Z/zSkMd/0 >>568
誰かが書き換えなきゃ新しくはならんのだぞ。
誰かが書き換えなきゃ新しくはならんのだぞ。
570デフォルトの名無しさん (ラクッペペ MM8f-pwGU)
2023/07/26(水) 14:04:23.46ID:nSMXTC2xM まったく無いとは言わないが20年以上も昔のコードを弄る機会って実際どれくらいあるのか
あまりに不毛な主張だろう
あまりに不毛な主張だろう
571デフォルトの名無しさん (ワッチョイ dff0-POqA)
2023/07/26(水) 14:22:14.82ID:x/JHBN7Z0 >>129
これが実現出来ればそういう心配事も無くなるんだがな
これが実現出来ればそういう心配事も無くなるんだがな
572はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/26(水) 14:24:26.98ID:Z/zSkMd/0 ちなみに俺は少なくとも C++11 以降だろ (C++20 は時期尚早かもしれない) 派だし
趣味でプログラミングしているから実務現場はわからない。
でも確実に 20 年前くらいのコードは生きてるよ。
質問サイトで (古いコードの意味について尋ねる質問に対して) 歴史的な事情を説明したことは何度もあるから。
それが割合としてどんくらいかというと確かに少なくはあると思うが……。
趣味でプログラミングしているから実務現場はわからない。
でも確実に 20 年前くらいのコードは生きてるよ。
質問サイトで (古いコードの意味について尋ねる質問に対して) 歴史的な事情を説明したことは何度もあるから。
それが割合としてどんくらいかというと確かに少なくはあると思うが……。
573デフォルトの名無しさん (ワッチョイ 0710-PxlL)
2023/07/26(水) 17:59:22.96ID:EGwoK+U90 11は妥当かも。新しいauto は11から一部、で14で増えた訳よね
C++の仕事で、例えばauto使ったらダメって言われたら、工エエェェ(´д`)ェェエエ工 アンタ達何でCじゃなくてC++使ってるん?てならんか
(マ板的な話でごめんね)
仕事で、Cで未だに99がダメとかいう頭おかしい現場もあり、問い詰めると周辺ツール整備の予算の都合と言い訳される。そういうのを切る政治のために喫煙所活動したり、元社の海外部署の圧を使ったりする
まあでも、自衛隊の武器でもC++あったよ…ただ、武器にはちゃんと使用期限があって。5年とか。継続で使いたい場合には再整備事業が起きる。次の期限いっぱいまで修理可能であるように求められるのね
新規は14以上、保守は11以上、は妥当かもね
C++の仕事で、例えばauto使ったらダメって言われたら、工エエェェ(´д`)ェェエエ工 アンタ達何でCじゃなくてC++使ってるん?てならんか
(マ板的な話でごめんね)
仕事で、Cで未だに99がダメとかいう頭おかしい現場もあり、問い詰めると周辺ツール整備の予算の都合と言い訳される。そういうのを切る政治のために喫煙所活動したり、元社の海外部署の圧を使ったりする
まあでも、自衛隊の武器でもC++あったよ…ただ、武器にはちゃんと使用期限があって。5年とか。継続で使いたい場合には再整備事業が起きる。次の期限いっぱいまで修理可能であるように求められるのね
新規は14以上、保守は11以上、は妥当かもね
574デフォルトの名無しさん (テテンテンテン MM8f-TfYz)
2023/07/26(水) 20:17:04.26ID:zBy57xkKM 動的に重たい機能(例外とか)を取り除いたembeded c++に再チャレンジしてほしいわ。
c with structure and template くらいの。
c with structure and template くらいの。
575デフォルトの名無しさん (ワッチョイ 077c-N/av)
2023/07/26(水) 20:27:29.80ID:qeWM+gpE0 また禿に死ぬべきだって言われるだけだぞ
576デフォルトの名無しさん (ワッチョイ dff0-FYg4)
2023/07/26(水) 20:36:31.16ID:J6WrB9lP0 俺も趣味でしか使ってないけど、OSSのメンテやってる外人がCで書かれたコードのこと
クソの山と呼んでるのを見かけてみんなそう思ってると信じちゃった
クソの山と呼んでるのを見かけてみんなそう思ってると信じちゃった
577デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/26(水) 20:45:03.48ID:T1zuvG990 「クソの山」って英語で何ていうの?
578デフォルトの名無しさん (ワッチョイ dff0-4APs)
2023/07/26(水) 20:47:33.68ID:e36yYIxR0579デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/26(水) 21:11:20.60ID:T1zuvG990 My intestine is a kind of FIFO.
580デフォルトの名無しさん (ワッチョイ 0720-rRCM)
2023/07/26(水) 21:14:18.52ID:4fMh7lxL0 bullshit
581デフォルトの名無しさん (ワッチョイ 473e-8suU)
2023/07/26(水) 21:21:43.95ID:Z/zSkMd/0 >>576
現実がクソなんだよ。
それでもコードにしなきゃならないところ(低レイヤとか速度がいるところとか言語を跨ぐインターフェイスとか)でCが使われるから必然的にクソになる。
他の言語で書いたところでたぶんクソだぞ。
現実がクソなんだよ。
それでもコードにしなきゃならないところ(低レイヤとか速度がいるところとか言語を跨ぐインターフェイスとか)でCが使われるから必然的にクソになる。
他の言語で書いたところでたぶんクソだぞ。
582デフォルトの名無しさん (オイコラミネオ MM3b-nVDU)
2023/07/26(水) 22:07:29.96ID:iOxX8HKcM 自分としては古いC++のコードの方がクソの山に見える
Cはまだまし
Cはまだまし
583デフォルトの名無しさん (ワッチョイ 6701-I2OL)
2023/07/26(水) 22:16:26.68ID:jPIzcFjy0 5chからの新しいお知らせは、他の板には出ないんだな
584デフォルトの名無しさん (ワッチョイ 67c0-CvEJ)
2023/07/27(木) 04:04:24.35ID:QeVlkja60 古い事自体は悪い訳ではないよね
質が低いけど影響範囲が大きくて修正されずに生き延びてる糞コードが悪いだけで
質が低いけど影響範囲が大きくて修正されずに生き延びてる糞コードが悪いだけで
585デフォルトの名無しさん (ワッチョイ bf9a-0/k/)
2023/07/27(木) 09:00:04.57ID:zEDi2bcm0586デフォルトの名無しさん (アウアウウー Sa2b-QKap)
2023/07/27(木) 09:00:15.65ID:GoQM94Wca587デフォルトの名無しさん (ワッチョイ 8702-Jlgx)
2023/07/27(木) 09:39:10.27ID:4LOg1fU50 >>576
PythonとかJavaScriptだけの世界に生きてる人たちはC++はクソとか言ってそうな気がする
PythonとかJavaScriptだけの世界に生きてる人たちはC++はクソとか言ってそうな気がする
588デフォルトの名無しさん (アウアウウー Sa2b-QKap)
2023/07/27(木) 09:49:28.34ID:GoQM94Wca 実際C++は糞だと思う
Cの方がマシ
Cの方がマシ
589デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/27(木) 10:16:37.98ID:+SEMblDr0 VCでビルドしたC++ライブラリって
mingwでビルドしたオブジェクトファイルとリンクできないよね?
Cライブラリだとできるけども
mingwでビルドしたオブジェクトファイルとリンクできないよね?
Cライブラリだとできるけども
590デフォルトの名無しさん (ワッチョイ 0710-IJmj)
2023/07/27(木) 10:25:00.16ID:uqLQvp0Q0 c++だとマングリングの規則がコンパイラごとに違うから無理なはず
591デフォルトの名無しさん (ワッチョイ a701-JYYx)
2023/07/27(木) 10:37:09.86ID:+SEMblDr0 >>590
ありがとうございます
ありがとうございます
592はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 473e-pcwf)
2023/07/27(木) 11:15:58.50ID:p+3LvAw40 COM の規約で運用するという方法もあるけど割とめんどい
593デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/27(木) 12:11:09.64ID:+SEMblDr0 C++ライブラリとCライブラリの両方があったので
素直にCライブラリの方を使うことにします
素直にCライブラリの方を使うことにします
594デフォルトの名無しさん (アウアウウー Sa2b-4APs)
2023/07/27(木) 14:18:54.70ID:SGfMLUd3a >>585
その原文の訳が「まるでそびえ立つクソだ!」だからhighly stacked shitあたりだろうけど、あれはハートマン軍曹という異常者の語彙だから、多分pile of shitなんかの方が一般的かもね
その原文の訳が「まるでそびえ立つクソだ!」だからhighly stacked shitあたりだろうけど、あれはハートマン軍曹という異常者の語彙だから、多分pile of shitなんかの方が一般的かもね
595デフォルトの名無しさん (ワッチョイ 7ffb-p1qB)
2023/07/27(木) 21:44:21.80ID:alYzqiaL0 msvcからmingwに移行しようと思い、7zを展開したらディフェンダーちゃんが反応したので何かと思ったら
596デフォルトの名無しさん (ワッチョイ 473e-8suU)
2023/07/27(木) 22:58:54.41ID:p+3LvAw40 実行ファイルを生成するものは割りとひっかかる
597デフォルトの名無しさん (アウアウウー Sa2b-QKap)
2023/07/28(金) 10:55:13.63ID:Zgvcm9f5a 7zを展開する前にファイルをExoplorerから右クリックで開いて
ディフェンダー無効にしてから展開するだけだろ
ディフェンダー無効にしてから展開するだけだろ
598デフォルトの名無しさん (スップ Sd7f-HOej)
2023/07/28(金) 13:11:52.02ID:6yxKL9JFd Defenderに無害認定されるまで戦い続けるマ?
599デフォルトの名無しさん (ワッチョイ dff0-FYg4)
2023/07/28(金) 13:58:16.94ID:AMhr/ZcZ0 どういう設定でコンパイルしたら有害認定されるかむしろ知りたいわ
600デフォルトの名無しさん (ワッチョイ 2705-TI2y)
2023/07/28(金) 20:53:22.55ID:nOGNEf1T0 oss物は使ってくれるなというms様のお達し?
601デフォルトの名無しさん (ワッチョイ a701-Fb4F)
2023/07/28(金) 21:03:20.13ID:iCEYdRhP0 wslでLinux飲み込んだのに?
602デフォルトの名無しさん (ワッチョイ 473e-8suU)
2023/07/28(金) 21:12:30.62ID:yKS6EUDz0 そういや従量課金回線むけに通信量を制限するソフトを入れたら
通信を阻害するマルウェアとして検出されたことがある。
解釈によってはそりゃそうだと思うし、
セキュリティツールは疑陽性が増えてでも偽陰性を
減らす方向に調整するのはしょうがないんじゃねーの
通信を阻害するマルウェアとして検出されたことがある。
解釈によってはそりゃそうだと思うし、
セキュリティツールは疑陽性が増えてでも偽陰性を
減らす方向に調整するのはしょうがないんじゃねーの
603デフォルトの名無しさん (ワッチョイ 8f9c-JfPF)
2023/07/29(土) 01:25:10.10ID:eLz5SM1d0 マイクロソフトとしてはストアアプリとして配信して欲しいんだろうね
ZIPなどの野良アプリ配布は不遇の時代よ
ZIPなどの野良アプリ配布は不遇の時代よ
604デフォルトの名無しさん (ワッチョイ bec3-B8t3)
2023/07/29(土) 01:41:06.31ID:mO2Fj1W+0 テレメスパイウェアage
605デフォルトの名無しさん (アウアウウー Sa1f-6+wX)
2023/07/30(日) 09:49:16.34ID:azQXcNDBa >>599
コンパイル後のexeがなぜか毎回消える問題は何かのバージョンで過去にあった
コンパイル後のexeがなぜか毎回消える問題は何かのバージョンで過去にあった
606デフォルトの名無しさん (ワッチョイ befb-LsOw)
2023/07/30(日) 11:40:03.78ID:/52qmc2G0 >>605
恥ずかしがり屋め//
恥ずかしがり屋め//
607デフォルトの名無しさん (ワッチョイ 2679-ntsF)
2023/07/30(日) 19:58:32.07ID:cURCmIiS0 Defender様はOS内蔵のC#で作ったexeも容赦なく消してくるぞ
名前が他と被ってたり変な場所に置いたりしてると割と起こる
名前が他と被ってたり変な場所に置いたりしてると割と起こる
608デフォルトの名無しさん (ワッチョイ 2301-9pon)
2023/07/30(日) 23:32:06.49ID:Phugis3j0 初期化していないstd::optional <int>をdereferenceすると0として扱われます
boost::optional <int>だとAbortされるのですが
なぜstdではこのようになっているのかどなたかご存知ですか?
$ cat test.cpp
#include <optional>
#include <boost/optional.hpp>
#include <iostream>
using namespace std;
int main () {
std::optional <int> i0;
cout << *i0 << '\n';
if (i0) cout << "Initilized\n";
else cout << "Not initilized\n";
boost::optional <int> i1;
cout << *i1 << '\n';
return 0;
}
$ ./test
0
Not initilized
test: /usr/include/boost/optional/optional.hpp:1212: boost::optional<T>::reference_type boost::optional<T>::get() [with T = int; reference_type = int&]: Assertion `this->is_initialized()' failed.
Aborted (core dumped)
boost::optional <int>だとAbortされるのですが
なぜstdではこのようになっているのかどなたかご存知ですか?
$ cat test.cpp
#include <optional>
#include <boost/optional.hpp>
#include <iostream>
using namespace std;
int main () {
std::optional <int> i0;
cout << *i0 << '\n';
if (i0) cout << "Initilized\n";
else cout << "Not initilized\n";
boost::optional <int> i1;
cout << *i1 << '\n';
return 0;
}
$ ./test
0
Not initilized
test: /usr/include/boost/optional/optional.hpp:1212: boost::optional<T>::reference_type boost::optional<T>::get() [with T = int; reference_type = int&]: Assertion `this->is_initialized()' failed.
Aborted (core dumped)
609デフォルトの名無しさん (ワッチョイ d35f-X/lp)
2023/07/30(日) 23:50:56.20ID:1/o7VgXA0610デフォルトの名無しさん (ワッチョイ 2301-9pon)
2023/07/30(日) 23:58:13.09ID:Phugis3j0 boostの方が親切ですよね
何でstdでなくしたんでしょ?
何でstdでなくしたんでしょ?
611デフォルトの名無しさん (ワッチョイ 2301-9pon)
2023/07/31(月) 00:15:55.53ID:ulrQSEBD0 stdはパフォーマンスを気にしたんでしょうかね?
612デフォルトの名無しさん (ワッチョイ 8f7c-xLd3)
2023/07/31(月) 00:17:50.97ID:kuDsfsru0 未定義動作をどうしようとコンパイラの勝手
613デフォルトの名無しさん (ワッチョイ 2301-9pon)
2023/07/31(月) 00:42:57.84ID:ulrQSEBD0614デフォルトの名無しさん (ワッチョイ d35f-X/lp)
2023/07/31(月) 01:10:19.51ID:cE0Z6rmj0 >>613
std::optionalの仕様がboost::optionalを参考にしたのは確かだろうけど、
std::optionalの実装はboost::optionalの実装をもとにしたわけじゃないだろうから、
不要なチェックが無い状態でむしろ自然。
何か意図を持って「なくした」「外した」などという事実がおそらく無い。
仮に意図的だったとして、ここで誰かがその質問にyes/noを答えても本当かどうかはわからない。
どうしても気になるならライブラリ実装者に聞くべき。
std::optionalの仕様がboost::optionalを参考にしたのは確かだろうけど、
std::optionalの実装はboost::optionalの実装をもとにしたわけじゃないだろうから、
不要なチェックが無い状態でむしろ自然。
何か意図を持って「なくした」「外した」などという事実がおそらく無い。
仮に意図的だったとして、ここで誰かがその質問にyes/noを答えても本当かどうかはわからない。
どうしても気になるならライブラリ実装者に聞くべき。
615デフォルトの名無しさん (ワッチョイ 2301-9pon)
2023/07/31(月) 02:06:40.22ID:ulrQSEBD0 仕様はboostが元になっているのは間違いないので
規格に入れるときになぜこれを変えたのか理由が分かればなと考えました
proposal追ってる人でご存知の方がいればなと思いましたが
自分でも読んでみます
規格に入れるときになぜこれを変えたのか理由が分かればなと考えました
proposal追ってる人でご存知の方がいればなと思いましたが
自分でも読んでみます
616デフォルトの名無しさん (ワッチョイ d35f-X/lp)
2023/07/31(月) 03:26:45.40ID:cE0Z6rmj0617デフォルトの名無しさん (ワッチョイ a6a4-2Bsr)
2023/08/02(水) 01:27:09.22ID:UwRg95UI0 プログラミングの面接を受けた。言語は何でもいいというので今使ってるC++で予め申請。
ロジックを問う問題なので言語で差はつかない、という話... だったが実際は文字列処理
の問題が多く、これはスクリプト系とかの方が有利じゃないか
C++にはなんで文字列のsplit系はないんだろ。どうしてます? <- あ、これが雑多な質問w
ロジックを問う問題なので言語で差はつかない、という話... だったが実際は文字列処理
の問題が多く、これはスクリプト系とかの方が有利じゃないか
C++にはなんで文字列のsplit系はないんだろ。どうしてます? <- あ、これが雑多な質問w
618デフォルトの名無しさん (ワッチョイ a6a4-2Bsr)
2023/08/02(水) 01:29:42.76ID:UwRg95UI0 ちなみに自分は以前Pythonを使っていた時期もJavaを使っていた時期もあるけど
今は頭が「C++脳」になっている気がして、とっさにそれらを使うとなると不安を感じたのだった
やはり常日頃から他の言語も回しておくべきだろうか
今は頭が「C++脳」になっている気がして、とっさにそれらを使うとなると不安を感じたのだった
やはり常日頃から他の言語も回しておくべきだろうか
619デフォルトの名無しさん (ワッチョイ a6a4-2Bsr)
2023/08/02(水) 01:31:05.25ID:UwRg95UI0 マ系の話かもしれないですね、すみません
620デフォルトの名無しさん (ワッチョイ 4af0-0TAO)
2023/08/02(水) 01:45:10.69ID:JKibevwe0 次の問題でグラフにプロットしろとか言われそうだなw
621デフォルトの名無しさん (ワッチョイ b73e-4j5P)
2023/08/02(水) 01:58:11.71ID:Vhf3uqZN0622デフォルトの名無しさん (ワッチョイ 33d6-cK++)
2023/08/02(水) 06:20:23.71ID:NkBPLpHI0 >>617
istringstream と getline を使えば、区切られた文字を順番に取り出せる。
空白文字区切りなら、getline の代わりに >> が使える。
https://maku77.github.io/cpp/string/split.html
istringstream と getline を使えば、区切られた文字を順番に取り出せる。
空白文字区切りなら、getline の代わりに >> が使える。
https://maku77.github.io/cpp/string/split.html
623デフォルトの名無しさん (アウアウウー Sa1f-IPSQ)
2023/08/02(水) 09:31:21.06ID:4pI1Wfnva >>617
C/C++でそれが出来て初めて「C/C++が使えます」って言えるんだ
C/C++でそれが出来て初めて「C/C++が使えます」って言えるんだ
624デフォルトの名無しさん (ワッチョイ befb-LsOw)
2023/08/02(水) 09:36:40.40ID:y1hozJP20 1つの言語で覚えたあたらしい機能を実現するのに他の言語ではどう書く?って感じで比較しながら書くと記憶が精緻化しやすく忘れにくくなる
625デフォルトの名無しさん (アウアウウー Sa1f-IPSQ)
2023/08/02(水) 10:22:30.40ID:4pI1Wfnva626デフォルトの名無しさん (ワッチョイ befb-LsOw)
2023/08/02(水) 12:38:15.38ID:y1hozJP20 コーディングテストのはずがメインメソッド作ってって言われたときはこちらからお断り申し上げたことがある
627デフォルトの名無しさん (ワッチョイ befb-LsOw)
2023/08/02(水) 12:43:22.62ID:y1hozJP20 チンチンシュッシュシュですわ
628デフォルトの名無しさん (ワッチョイ 4b9a-2Bsr)
2023/08/03(木) 09:24:52.48ID:lr2Ednh70629デフォルトの名無しさん (ワッチョイ 6af0-PvkJ)
2023/08/03(木) 09:35:40.45ID:IPuBCl990 自分で作れよw
簡単だろ
簡単だろ
630はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b73e-yh3V)
2023/08/03(木) 09:36:19.80ID:HBD/4AdY0 >>628
C++20 以降なら std::views::split を使えるよ。
C++20 以降なら std::views::split を使えるよ。
631デフォルトの名無しさん (ワッチョイ befb-LsOw)
2023/08/03(木) 20:08:30.72ID:IJZbd6wk0 >>628
c++がマニアックなのはまぁわかる
他の言語に切り替わらないっていうのは鍛錬不足じゃあ無いのかね
c++で書いたものを見ながら別の言語に書き換えるっていう作業の時間が足りてないんじゃない?
c++がマニアックなのはまぁわかる
他の言語に切り替わらないっていうのは鍛錬不足じゃあ無いのかね
c++で書いたものを見ながら別の言語に書き換えるっていう作業の時間が足りてないんじゃない?
632デフォルトの名無しさん (ワッチョイ 43a5-IPSQ)
2023/08/04(金) 21:09:58.67ID:5lu3SOws0 プリプロセッサディレクテブでマクロを組む方法はないでしょうか?
#ifndef XX
#define XX 1
#endif
define_default (XX, 1); <-こんな感じにマクロ化したい
#ifndef XX
#define XX 1
#endif
define_default (XX, 1); <-こんな感じにマクロ化したい
633デフォルトの名無しさん (ワッチョイ 7510-oj1Z)
2023/08/05(土) 01:51:28.51ID:L/LBNngA0 🤔…(こんな感じとは?)
634デフォルトの名無しさん (ワッチョイ 7510-oj1Z)
2023/08/05(土) 02:15:04.78ID:L/LBNngA0 スマン言いたい事分かった
直接の回答は:わからん。
多分、君の実装アイデアでは無理。
C++というかCな気がするが、コンパイラの規格の中に翻訳作業のステージが確か7つ位定義されてて、その一つがプリプロセス。で無限ループしないようになってたような。
本当にやりたいであろう事(定数定義の記述に定形があって煩雑なのをシンプルに書きたい)なら、私なら別の方法でやる、けどそれは聞かれてないよね
直接の回答は:わからん。
多分、君の実装アイデアでは無理。
C++というかCな気がするが、コンパイラの規格の中に翻訳作業のステージが確か7つ位定義されてて、その一つがプリプロセス。で無限ループしないようになってたような。
本当にやりたいであろう事(定数定義の記述に定形があって煩雑なのをシンプルに書きたい)なら、私なら別の方法でやる、けどそれは聞かれてないよね
635デフォルトの名無しさん (スッップ Sd2f-YWx9)
2023/08/05(土) 09:38:26.20ID:wvUeqD5zd 定義をマクロ定義する事はできないよ
都度意味を変えてincludeで読み込ませるとか
都度意味を変えてincludeで読み込ませるとか
636デフォルトの名無しさん (ワッチョイ 4f7c-HETv)
2023/08/05(土) 10:20:09.70ID:9rqysa6s0 よく分からんがC++の範疇じゃなくてcamkeとかコンパイラオプションでやる事っぽく見える
637デフォルトの名無しさん (ワッチョイ 31a5-mBaV)
2023/08/05(土) 22:30:35.02ID:a9xEz2i50 コンパイルオプションでdefineを省略されていればデフォルト値を使うようなコードの構造にしたいのですが、
なるたけmakeやコンパイル環境に依存しないことが希望です。
プリプロセッサを使うと煩雑で読みづらくなってしまうので、カプセル化したいです。
C++ならもう少し洗練された方法がないものかと思うところですが、
定数定義の記述定形があって煩雑なのをシンプルに書く方法があれば教えて下さい
なるたけmakeやコンパイル環境に依存しないことが希望です。
プリプロセッサを使うと煩雑で読みづらくなってしまうので、カプセル化したいです。
C++ならもう少し洗練された方法がないものかと思うところですが、
定数定義の記述定形があって煩雑なのをシンプルに書く方法があれば教えて下さい
638デフォルトの名無しさん (ワッチョイ 4d01-zxRi)
2023/08/05(土) 23:17:58.10ID:NzC+Rt9F0 現状のサンプルコードを書いた方が答えやすい
639デフォルトの名無しさん (ワッチョイ 31a5-mBaV)
2023/08/05(土) 23:34:29.13ID:a9xEz2i50 #ifndef XX1
#define XX1 1
#endif
#ifndef XX2
#define XX2 0
#endif
:
#define XX1 1
#endif
#ifndef XX2
#define XX2 0
#endif
:
640デフォルトの名無しさん (ワッチョイ 5b3e-8WNR)
2023/08/06(日) 00:25:50.71ID:Mgx3ApDu0 C++ はなるべくマクロを使わずに済む方向に進化してはいるが
マクロを使うのであればそれより良い方法はないと思うよ。
マクロを使うのであればそれより良い方法はないと思うよ。
641デフォルトの名無しさん (ワッチョイ e3f0-uQHI)
2023/08/06(日) 01:54:30.05ID:7ys7hHtb0 俺ならテンプレート引数のデフォルト引数を使うけど、
既存のコードを何とかしたいって事かい?
既存のコードを何とかしたいって事かい?
642デフォルトの名無しさん (ワッチョイ 7510-WTQk)
2023/08/06(日) 04:00:21.32ID:VdM0xi000 >>637
君の求めてるエレガントな方法は、知らない。スマンね
私がもし 今すぐ 仕事でやる必要があるなら
XX1 1
XX2 0
というテキストファイルから、君の例示したソースファイルを生成する「ツール」を勝手に作って使い、手で書いたフリをする
数百あるならツールに意味があるし
もし聞かれたらツールで生成したと答えるが、正直どうでもいい
メンテフェーズでの1件2件の追加修正は手で書きゃいい
君の求めてるエレガントな方法は、知らない。スマンね
私がもし 今すぐ 仕事でやる必要があるなら
XX1 1
XX2 0
というテキストファイルから、君の例示したソースファイルを生成する「ツール」を勝手に作って使い、手で書いたフリをする
数百あるならツールに意味があるし
もし聞かれたらツールで生成したと答えるが、正直どうでもいい
メンテフェーズでの1件2件の追加修正は手で書きゃいい
643デフォルトの名無しさん (ワッチョイ 7510-7C81)
2023/08/06(日) 04:31:49.92ID:VdM0xi000 ここって#とかの文字書けるのかな...
#!/bin/bash
put_data_list()
{
cat <<EOF
XX1 1
XX2 0
EOF
}
main()
{
while read NAME VAL
do
cat <<EOF
#ifndef $NAME
#define $NAME VAL
#endif
EOF
done
}
put_data_list | main
#!/bin/bash
put_data_list()
{
cat <<EOF
XX1 1
XX2 0
EOF
}
main()
{
while read NAME VAL
do
cat <<EOF
#ifndef $NAME
#define $NAME VAL
#endif
EOF
done
}
put_data_list | main
644デフォルトの名無しさん (ワッチョイ 5b3e-8WNR)
2023/08/06(日) 11:54:26.68ID:Mgx3ApDu0 その手のパラメータをマクロとして大量に定義する
必要があるときというのは
開発・実行環境ごとに切り分けたいという要求なことが多くて、
そうだとしたら環境依存を避けたいという要件設定が
ナンセンスってことになるんよ。
必要があるときというのは
開発・実行環境ごとに切り分けたいという要求なことが多くて、
そうだとしたら環境依存を避けたいという要件設定が
ナンセンスってことになるんよ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 東京株式市場 インバウンド関連株が下落 中国政府の渡航自粛要請で [バイト歴50年★]
- 🏡
- スーパーが開くまで約4時間何すりゃいいんだ?
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 飲みの約束だるい
- 減税は低所得者差別
- 高市さんに土下座してもらったら一発解決なのに何でやらないんだろ??
