!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:EYc2I7oW0641デフォルトの名無しさん (ワッチョイ 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 その手のパラメータをマクロとして大量に定義する
必要があるときというのは
開発・実行環境ごとに切り分けたいという要求なことが多くて、
そうだとしたら環境依存を避けたいという要件設定が
ナンセンスってことになるんよ。
必要があるときというのは
開発・実行環境ごとに切り分けたいという要求なことが多くて、
そうだとしたら環境依存を避けたいという要件設定が
ナンセンスってことになるんよ。
645デフォルトの名無しさん (ワッチョイ 054e-c/5M)
2023/08/06(日) 12:11:02.29ID:R5xvWuDw0 その開発・実行環境がコンパイラ含めてまるごと提供される場合だと、C(++)基本機能だけで済ませないと何かと面倒というのは分かる
ゲーム機とかがそれ
ゲーム機とかがそれ
646デフォルトの名無しさん (ワッチョイ c379-IXit)
2023/08/06(日) 12:13:51.56ID:SuulMMGF0 マイコン用のヘッダなんかはそういうテクニックが駆使されてて環境依存を減らしてるから参考になるよ
arduinoみたいな特定のマイコンに依存してない環境では特に
arduinoみたいな特定のマイコンに依存してない環境では特に
647デフォルトの名無しさん (ワッチョイ e3f0-uQHI)
2023/08/10(木) 05:18:21.73ID:cgZD1dE+0 最近はマイコンでもC++使うんですか?
普通にC使ったほうがいいと思うんですけどどうなってるんですか有識者の方
普通にC使ったほうがいいと思うんですけどどうなってるんですか有識者の方
648デフォルトの名無しさん (ワッチョイ e3f0-WeFQ)
2023/08/10(木) 08:37:15.11ID:R9ss+SBt0 C++でもメモリを食わない書き方はあるとだけ言っておく
STLライブラリに恩恵を受けて育った温室育ちには理解出来んかもだがな
STLライブラリに恩恵を受けて育った温室育ちには理解出来んかもだがな
649デフォルトの名無しさん (ワッチョイ 054e-c/5M)
2023/08/10(木) 09:55:47.75ID:4skaSxsv0 マイコンのことは知らないが、いまさら、
//コメント
スコープ内ローカル変数
関数のオーバーロードや引き数の省略
bool型とture/false識別子
等がないC言語とか無理だなw
//コメント
スコープ内ローカル変数
関数のオーバーロードや引き数の省略
bool型とture/false識別子
等がないC言語とか無理だなw
650デフォルトの名無しさん (ワッチョイ 5b3e-oz9p)
2023/08/10(木) 10:54:42.66ID:5Abh0bq20 >>649
その4つの内の3つはCにある機能だぞ
その4つの内の3つはCにある機能だぞ
651デフォルトの名無しさん (ワッチョイ 054e-c/5M)
2023/08/10(木) 14:04:07.34ID:4skaSxsv0 組み込み向けでもC99つかえるの?
まぁ、最近はclangとかなのかな…日立コンパイラの恐怖とか思い出すわw
まぁ、最近はclangとかなのかな…日立コンパイラの恐怖とか思い出すわw
652デフォルトの名無しさん (ワッチョイ 5b3e-tyL0)
2023/08/10(木) 14:23:33.39ID:5Abh0bq20 スコープ内ローカル変数ってのが何を意味してるのかよくわからんが、
(関数ブロック以外でも) ブロックの先頭では変数宣言できるぞ。 C89 でも。
(関数ブロック以外でも) ブロックの先頭では変数宣言できるぞ。 C89 でも。
653デフォルトの名無しさん (ワッチョイ d105-GNKj)
2023/08/10(木) 16:21:19.73ID:ygto10X60 >>650
C++から逆輸入されたんだっけ?
C++から逆輸入されたんだっけ?
654デフォルトの名無しさん (ワッチョイ d105-GNKj)
2023/08/10(木) 16:23:48.61ID:ygto10X60 マイコンって言ってももはや幅が広すぎるよな
655はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5b3e-tyL0)
2023/08/10(木) 16:42:27.27ID:5Abh0bq20 Z80 だって C99 対応コンパイラは有るくらいだし、現代でも売ってるマイコン
かつ C コンパイラが存在するなら大抵は C99 対応くらいはしてるんじゃね。
完璧に準拠ってほどではないかもしれんけど。
かつ C コンパイラが存在するなら大抵は C99 対応くらいはしてるんじゃね。
完璧に準拠ってほどではないかもしれんけど。
656デフォルトの名無しさん (ワッチョイ dffb-IrHc)
2023/08/10(木) 19:28:12.15ID:rVmtE6nS0 今ってマクロ使うよりもモジュールにしてstaticでやる方がオトクなんだって?
657デフォルトの名無しさん (ワッチョイ 4f7c-HETv)
2023/08/11(金) 07:07:37.61ID:gKBPOQXo0 マイコンって関数呼び出しなんて重すぎてとんでもないmainに全部ベタ書きしろって世界でしょ?
そんなとこでモジュールなんて許されるのか
そんなとこでモジュールなんて許されるのか
658デフォルトの名無しさん (ワッチョイ 61da-WeFQ)
2023/08/11(金) 07:24:40.95ID:RJhU8z4K0659デフォルトの名無しさん (ワッチョイ 4f7c-HETv)
2023/08/11(金) 07:59:20.53ID:gKBPOQXo0 そーなの?
昔受けた講習で「関数は重いので関数ポインタを扱う用途以外では作りません。処理をまとめるにはマクロかgotoを使います」って言ってて衝撃受けた口なんだけど
時代の流れなのかこの講習がタコなのかあなたがタコなのか専門外だから分からないよ
昔受けた講習で「関数は重いので関数ポインタを扱う用途以外では作りません。処理をまとめるにはマクロかgotoを使います」って言ってて衝撃受けた口なんだけど
時代の流れなのかこの講習がタコなのかあなたがタコなのか専門外だから分からないよ
660デフォルトの名無しさん (ワッチョイ 61da-WeFQ)
2023/08/11(金) 08:08:48.37ID:RJhU8z4K0 ホントに極小サイズの容量小さい昔のマイコンならアセンブラでハードウェアアドレスにI/Oコールして組み上げんだろうけどいまのマイコンはそのレベルを既に凌駕して逸脱してるから誰でも気軽に組みやすく仕上がってる
micropythonみたいなインタープリタも走るしな
micropythonみたいなインタープリタも走るしな
661デフォルトの名無しさん (オイコラミネオ MMc9-uQHI)
2023/08/11(金) 08:32:55.43ID:4oMIZBsGM 関数を使わないのはRAMは少なくてスタックがシビアだからです
662デフォルトの名無しさん (ワッチョイ 61da-WeFQ)
2023/08/11(金) 08:36:34.41ID:RJhU8z4K0 スタックフレームつくるからだろ
インラインで全部組めばスタック要らんくなるよ
コードの容量は増えるかもしれんけど
インラインで全部組めばスタック要らんくなるよ
コードの容量は増えるかもしれんけど
663デフォルトの名無しさん (オイコラミネオ MMc9-uQHI)
2023/08/11(金) 08:40:37.51ID:4oMIZBsGM 何らかの便利な仕組みがあるとそのせいでメモリが足りなくなることもあった
そのせいかどうかしらないけど過去はforの階層が7階層に制限されてたり今では意味不明
ブロックスコープの仕組みのためか?
ifとgotoにしたら回避できる
そのせいかどうかしらないけど過去はforの階層が7階層に制限されてたり今では意味不明
ブロックスコープの仕組みのためか?
ifとgotoにしたら回避できる
664はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 4132-oz9p)
2023/08/11(金) 09:58:09.34ID:vt/fQ4Il0 プログラムを 2KiB 程度しか書き込めない PIC なんかもあるが
そのレベルの機器だとどうせ低レイヤにべったりと
依存せざるをえないだろうし、
C で極端な書き方をするくらいならもっと低級な言語を
使った方が楽かもしれないな。
そういう割り切りが出来ない程度の中途半端なのが一番困る。
そのレベルの機器だとどうせ低レイヤにべったりと
依存せざるをえないだろうし、
C で極端な書き方をするくらいならもっと低級な言語を
使った方が楽かもしれないな。
そういう割り切りが出来ない程度の中途半端なのが一番困る。
665デフォルトの名無しさん (スフッ Sdd7-A0iR)
2023/08/11(金) 12:49:59.96ID:oqyg1NI/d666デフォルトの名無しさん (ワッチョイ 9af0-vKG+)
2023/08/12(土) 01:11:27.44ID:DKBxYxYv0 最近のは単価数百円で256kbとかメモリ積んでるんだな…
667デフォルトの名無しさん (ワッチョイ f358-yhDR)
2023/08/16(水) 17:21:20.72ID:hgmxYG6c0 その昔、使ってたHP-29Cがサブルーチンのネストが3段までで
その後に出荷されたHP-34Cが6段になってるの見て
おおーってなった懐かしい思い出
その後に出荷されたHP-34Cが6段になってるの見て
おおーってなった懐かしい思い出
668デフォルトの名無しさん (ワッチョイ f358-yhDR)
2023/08/16(水) 17:40:41.84ID:hgmxYG6c0 今はinlineや関数テンプレートのように開いたサブルーチンが普通に使えるからなあ
669デフォルトの名無しさん (ワッチョイ 2702-Dztr)
2023/08/16(水) 22:34:48.53ID:YHO3HAlN0670デフォルトの名無しさん (ワッチョイ 5b94-J+rV)
2023/08/17(木) 00:57:31.86ID:VKXPNJiw0 >>669
Amazonギフトに交換できるんだ
Amazonギフトに交換できるんだ
671デフォルトの名無しさん (JP 0H7f-YOEV)
2023/08/17(木) 15:51:12.83ID:BJu8USc1H ちなみにその方法でアマギフ入手するとアマゾンアカウント停止させられるから気をつけてね
672デフォルトの名無しさん (ワッチョイ b690-g0y9)
2023/08/17(木) 23:57:58.55ID:4XlHHMDQ0 ショボい詐欺はスルーで
673デフォルトの名無しさん (スップ Sdba-aAP2)
2023/08/18(金) 07:50:49.06ID:ibegtSC/d >>669
グロ
グロ
674デフォルトの名無しさん (ワッチョイ 5901-greZ)
2023/08/21(月) 17:47:44.07ID:mTvtbn+H0 週3日稼働案件の職種別月収ランキングNo.1は「データサイエンティスト」で月72万円。
上位7職種が月50万円を超える月収。ほぼ全ての案件がリモート可案件。
フリーランス・複業・副業の求人マッチングサービス『SOKUDAN(ソクダン)』を運営する
CAMELORS株式会社、週3日フリーランス・副業案件の時給月収年収・職種別
ランキングについて調査した内容をお知らせいたします
SOKUDANに掲載されているフリーランス・副業案件のうち、週3日案件に限定して
時給・月収・年収を職種別のランキング記事としています。
■調査サマリー
週3日稼働案件の月収ランキング1位は「72万円」でデータサイエンティスト
週3日稼働案件の平均月収「460,487円」、年収換算「553万円」
週3日稼働のフリーランス・副業案件の99.4%は「リモート可」
上位12職種が時給3,000円、週3日稼働で月収30万円を超える
上位7職種が時給5,000円、週3日稼働で月収50万円を超える
上位7職種が月50万円を超える月収。ほぼ全ての案件がリモート可案件。
フリーランス・複業・副業の求人マッチングサービス『SOKUDAN(ソクダン)』を運営する
CAMELORS株式会社、週3日フリーランス・副業案件の時給月収年収・職種別
ランキングについて調査した内容をお知らせいたします
SOKUDANに掲載されているフリーランス・副業案件のうち、週3日案件に限定して
時給・月収・年収を職種別のランキング記事としています。
■調査サマリー
週3日稼働案件の月収ランキング1位は「72万円」でデータサイエンティスト
週3日稼働案件の平均月収「460,487円」、年収換算「553万円」
週3日稼働のフリーランス・副業案件の99.4%は「リモート可」
上位12職種が時給3,000円、週3日稼働で月収30万円を超える
上位7職種が時給5,000円、週3日稼働で月収50万円を超える
675デフォルトの名無しさん (ワッチョイ 3136-wdUj)
2023/08/21(月) 22:24:31.55ID:qha1IMDa0 >>669
貰うだけ貰うか
貰うだけ貰うか
676デフォルトの名無しさん (ワッチョイ 2b10-OsaT)
2023/08/22(火) 18:52:00.21ID:vz2M4TZw0 c++でGUI作る時のフレームワークって今は何が主流なんでしょうか。
昔は、MFCとか有名でしたが。
それとも、c#で簡単にui作って内部的にc++で処理するとかですかね。
昔は、MFCとか有名でしたが。
それとも、c#で簡単にui作って内部的にc++で処理するとかですかね。
677はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 893e-glFA)
2023/08/22(火) 20:03:04.11ID:+W4fml+10 Windows での話なら WinUI を活用する方法が現代的なやり方だけど主流と言える感じでもないかな……。
WebView コントロールで全部をやってしまえばウェブ技術がかなり使えるので
プログラマの知識バックグラウンドによっては楽ということもあるかも。
WebView コントロールで全部をやってしまえばウェブ技術がかなり使えるので
プログラマの知識バックグラウンドによっては楽ということもあるかも。
678デフォルトの名無しさん (ワッチョイ 597c-JHPd)
2023/08/22(火) 20:29:01.97ID:lpVGvukl0 なんかもう最近はPCでGUIプログラムなんぞ作ること自体が時代遅れみたいな風潮で息苦しいよ
679デフォルトの名無しさん (ワッチョイ 2bfb-KmyD)
2023/08/22(火) 22:37:29.50ID:0uc0qR5i0 基本はGUi作るのはひ
680デフォルトの名無しさん (ワッチョイ 599c-HTZh)
2023/08/23(水) 00:17:14.58ID:+DZCM0il0 WindowsとLinuxで同じアプリ動かさないといけない案件でgtkmm使ったことある
UIをCSSで装飾できるのがモダンな感じでよかった!
UIをCSSで装飾できるのがモダンな感じでよかった!
681デフォルトの名無しさん (ワッチョイ 2bf2-N2rt)
2023/08/23(水) 00:39:14.30ID:Ev7RzN030 wxWidgetsおすすめ
682デフォルトの名無しさん (ワッチョイ 1990-PVU2)
2023/08/23(水) 05:35:54.64ID:syViBZyk0 JAVAを使うとこじゃないのか?
683デフォルトの名無しさん (ワッチョイ 93f0-YAjS)
2023/08/23(水) 05:41:53.03ID:yb1p7Ca/0 お前はスレタイも質問文の前提も読めないのか
684デフォルトの名無しさん (ラクッペペ MM4b-pGo3)
2023/08/23(水) 06:02:39.20ID:DtllJKP1M VC++なら実体はC++/CLIの実装なのでちょっとした手間でWinUI 3が利用出来るんじゃないの?
知らんけど
知らんけど
685デフォルトの名無しさん (ワッチョイ d9da-IilA)
2023/08/23(水) 07:20:34.95ID:5hD/FFHF0 また知ったかが
VC++とC++/CLIは全くの別もんだろ
VC++とC++/CLIは全くの別もんだろ
686デフォルトの名無しさん (ラクッペペ MM4b-pGo3)
2023/08/23(水) 07:45:27.28ID:jTxxfogGM687デフォルトの名無しさん (ワッチョイ a158-0WDc)
2023/08/23(水) 10:20:14.35ID:tOgZZX+q0688デフォルトの名無しさん (スフッ Sdb3-G+yN)
2023/08/23(水) 11:25:24.82ID:WaZBmlqUd689デフォルトの名無しさん (テテンテンテン MM4b-RKQT)
2023/08/23(水) 12:28:03.69ID:SELcDCTxM Electronどうかね。
使ったこと無いけど。
使ったこと無いけど。
690デフォルトの名無しさん (ワッチョイ 5105-D2YO)
2023/08/23(水) 12:39:22.05ID:WZJfreeh0 要件によって変わるから一概にコレってのが無いな
691デフォルトの名無しさん (ワッチョイ 93f0-WivN)
2023/08/23(水) 22:44:49.61ID:slwUpp650 C++でGUI作るときはQt使ってる。Designerが便利
692デフォルトの名無しさん (ワッチョイ 93f0-YAjS)
2023/08/24(木) 03:00:05.96ID:KjKP5fLp0 何故C++のGUIフレームワークのライセンスはLGPLばかりなのか
693デフォルトの名無しさん (ワッチョイ 599c-RKQT)
2023/08/24(木) 08:48:33.25ID:TNcuPvYX0694デフォルトの名無しさん (アウアウウー Sa45-WivN)
2023/08/24(木) 19:48:24.59ID:IxxAot5ma ImGuiってどうよ?
695デフォルトの名無しさん (ワッチョイ db79-wKkg)
2023/08/24(木) 22:02:03.62ID:W+JHQ2GG0 >C++でGUI
出てくるモノが昔と代わり映えしてなくて草
C#でええやろ
出てくるモノが昔と代わり映えしてなくて草
C#でええやろ
696デフォルトの名無しさん (ワッチョイ 3128-gjgG)
2023/08/25(金) 07:08:59.02ID:rQn+0/0C0 C++よりC#やJavaの方がGUIを書きやすいという言語の違いに起因する理由って何かあるっけ
リフレクションやガベージコレクションが別段必須でない気もするし
async/awaitが付く前からなんかJava/C#でGUI、という流れになっていた気がするし、
実はインテリセンスが効きやすい、とかアプレット的なやつがActiveXより書きやすかったから、とかそんなのが理由だったりして……
つなみにX window systemは良く知りま栓
リフレクションやガベージコレクションが別段必須でない気もするし
async/awaitが付く前からなんかJava/C#でGUI、という流れになっていた気がするし、
実はインテリセンスが効きやすい、とかアプレット的なやつがActiveXより書きやすかったから、とかそんなのが理由だったりして……
つなみにX window systemは良く知りま栓
697デフォルトの名無しさん (ワッチョイ 599c-HTZh)
2023/08/25(金) 07:59:22.15ID:w6iB83KR0 GUIツールキットの設計・開発は難しい
JavaはAWT→Swing→JavaFX
.NETはWinForms→WPF→UWP→WinUI3
何度も作り直してるんだよね
C++には標準GUIツールキットなんて要らないよ(どうせ何度も作り直すことになる)
JavaはAWT→Swing→JavaFX
.NETはWinForms→WPF→UWP→WinUI3
何度も作り直してるんだよね
C++には標準GUIツールキットなんて要らないよ(どうせ何度も作り直すことになる)
698デフォルトの名無しさん (ワッチョイ 3128-gjgG)
2023/08/25(金) 08:10:08.12ID:rQn+0/0C0 ゴメリよく考えたらフレクションがあると強いわ;;;
フォームエディタみたいなやつを提供する立場にたてば
ウィジェットクラスを作ったらそれだけでリフレクションを使ってそいつのプロパティーを即エディターのプロパティーに並べられるて
利用者に提供できうる
フォームエディタみたいなやつを提供する立場にたてば
ウィジェットクラスを作ったらそれだけでリフレクションを使ってそいつのプロパティーを即エディターのプロパティーに並べられるて
利用者に提供できうる
699デフォルトの名無しさん (ワッチョイ 93f0-WivN)
2023/08/25(金) 08:33:12.71ID:8nfgHtXd0 >>698
それくらいならC++でもヘッダ見ればリフレクション無しでできるんじゃね?
それくらいならC++でもヘッダ見ればリフレクション無しでできるんじゃね?
700デフォルトの名無しさん (アウアウウー Sa45-greZ)
2023/08/25(金) 09:11:51.64ID:5+gJach+a701デフォルトの名無しさん (ブーイモ MMb3-HTZh)
2023/08/25(金) 09:51:27.88ID:5ARzKA7QM フォームエディターっていつの時代よ
それってホームページビルダーでホームページ作るようなもので柔軟性がないんだよね
ウィンドウサイズ固定ならともかく、可変サイズのレイアウト作るならGUIデザイナ使うよりコード書いたほうが管理しやすい
ホームページビルダーよりHTML/CSS手書きを選ぶのと一緒
それってホームページビルダーでホームページ作るようなもので柔軟性がないんだよね
ウィンドウサイズ固定ならともかく、可変サイズのレイアウト作るならGUIデザイナ使うよりコード書いたほうが管理しやすい
ホームページビルダーよりHTML/CSS手書きを選ぶのと一緒
702デフォルトの名無しさん (ワッチョイ 9990-JowH)
2023/08/26(土) 21:45:39.47ID:uP0Ej+dj0703デフォルトの名無しさん (オイコラミネオ MM65-u1T+)
2023/08/28(月) 00:05:48.18ID:HI9+dVvpM >>695
嫌だ。
嫌だ。
704デフォルトの名無しさん (ワッチョイ 8610-4o0D)
2023/08/29(火) 00:12:25.55ID:VlZlfeK60 c++builderってネットに殆ど情報ないですね。
書籍もないし。
あまり使われてないからだと思うけど、これ使って開発すると躓いたら解決策見つからず苦労しますかね、、。
書籍もないし。
あまり使われてないからだと思うけど、これ使って開発すると躓いたら解決策見つからず苦労しますかね、、。
705デフォルトの名無しさん
2023/08/29(火) 03:59:08.18ID:7e4Tklec0 Builderの情報はほとんどないけどC++の情報はいっぱいある
VCLの情報はDelphiと同じだからなんとか探せばある
自分はBuilderだけ買ったけど同時にDelphiも買っておけばよかったとちょっと後悔はしているね
その程度には中途半端な存在と思う
VCLの情報はDelphiと同じだからなんとか探せばある
自分はBuilderだけ買ったけど同時にDelphiも買っておけばよかったとちょっと後悔はしているね
その程度には中途半端な存在と思う
706デフォルトの名無しさん (ワッチョイ 6dda-PUhn)
2023/08/29(火) 11:29:24.11ID:r8rvdmrM0 VCLのソースがないと中でなにやってるかワカランからな
707デフォルトの名無しさん (ワッチョイ caad-VnR5)
2023/08/29(火) 16:30:54.10ID:2MvLEdvj0 ヘッダにインターフェースだけ書いてcppにインプリメントクラスを定義して隠蔽するのって
ライブラリとかフレームワークだと意味あるけどアプリケーションレベルの実装でやる意味って無いですよね?
ライブラリとかフレームワークだと意味あるけどアプリケーションレベルの実装でやる意味って無いですよね?
709デフォルトの名無しさん (ワッチョイ d95f-1fgM)
2023/08/29(火) 16:40:33.32ID:Gj9jSZac0 インターフェースが何を指すか次第だけど、たぶんPimplイディオムのことかな?
ライブラリみたいに境界がかっちりしてないならそうかもね
ライブラリみたいに境界がかっちりしてないならそうかもね
710蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdea-fyEs)
2023/08/29(火) 16:40:58.05ID:A1BJ1LVxd >>707
ビルド時間を短縮する目的での隠蔽に使われることはある。隠蔽っていろいろ便利だから。
ビルド時間を短縮する目的での隠蔽に使われることはある。隠蔽っていろいろ便利だから。
711はちみつ餃子 ◆8X2XSCHEME (ワッチョイ a13e-aWw4)
2023/08/29(火) 17:08:55.74ID:s7G+g/ai0 pimpl は疎結合にできる分だけ
差分ビルドでコンパイルする範囲が
小さくなるから特に巨大なプログラムの開発では
ビルド時間を短縮する意味はあるはずだが
余計な構造を挟む煩わしさと比べて
割にあうのはよっぽど極端な場合に限ると思われている。
(意味はあるが意味のある状況は限定的)
差分ビルドでコンパイルする範囲が
小さくなるから特に巨大なプログラムの開発では
ビルド時間を短縮する意味はあるはずだが
余計な構造を挟む煩わしさと比べて
割にあうのはよっぽど極端な場合に限ると思われている。
(意味はあるが意味のある状況は限定的)
712デフォルトの名無しさん (ワッチョイ a910-/+sI)
2023/08/29(火) 22:48:32.90ID:fHM5F2qI0 >>707
大きなアプリを、元請け社の元で複数の下請けが作っている場合、
お金の流れが全然違う他社のコードとリンクする事はあるよね。
で、紳士協定で「設計書で使っていいと言ってる機能だけ外部から使って」としても
約束を破るバカモノがいる場合もある。
信頼できない他社から自社の身を守る(徹夜で他社のバグ解析に付き合わされる事を防ぐ)など
レイヤー化する事には、もしかしたら意味があるかも知れないね
悲しい&バカらしいかも知れないけど
あとは逆に、自社の実装バグを見つけてアッー!ってなった時に、インタフェースを守ってる他社に、自社の実装変更&リリースによる「再ビルド要」の迷惑をかけてしまう事を防ぐ、意味はあるかも知れない
大きなアプリを、元請け社の元で複数の下請けが作っている場合、
お金の流れが全然違う他社のコードとリンクする事はあるよね。
で、紳士協定で「設計書で使っていいと言ってる機能だけ外部から使って」としても
約束を破るバカモノがいる場合もある。
信頼できない他社から自社の身を守る(徹夜で他社のバグ解析に付き合わされる事を防ぐ)など
レイヤー化する事には、もしかしたら意味があるかも知れないね
悲しい&バカらしいかも知れないけど
あとは逆に、自社の実装バグを見つけてアッー!ってなった時に、インタフェースを守ってる他社に、自社の実装変更&リリースによる「再ビルド要」の迷惑をかけてしまう事を防ぐ、意味はあるかも知れない
713デフォルトの名無しさん (ワッチョイ a910-/+sI)
2023/08/29(火) 22:49:56.05ID:fHM5F2qI0 いや、分からんな、ゴメン
714デフォルトの名無しさん (ワッチョイ 2501-xDGp)
2023/08/29(火) 22:55:37.38ID:82ATxlW40 デフォルトでpimplの俺は少数派か...
715デフォルトの名無しさん (ワッチョイ 2501-xDGp)
2023/08/29(火) 23:23:11.79ID:82ATxlW40 C++はCの構造体をクラスに流用したからメンバー変数が見えてるけど
pimplのように隠れて然るべきが俺の持論
最適化の段階でinline化したい関数で触っている変数のみ
pimplの隠れた構造体から表の構造体に移動させているな
面倒くさくないかって? テンプレート用意してるから全然
pimplのように隠れて然るべきが俺の持論
最適化の段階でinline化したい関数で触っている変数のみ
pimplの隠れた構造体から表の構造体に移動させているな
面倒くさくないかって? テンプレート用意してるから全然
716デフォルトの名無しさん (ワッチョイ 15b3-NdIe)
2023/08/30(水) 00:04:31.34ID:mW2zyf/K0 C++には不思議な魅力がある
C#
C#
717デフォルトの名無しさん (ワッチョイ 15b3-NdIe)
2023/08/30(水) 00:05:23.32ID:mW2zyf/K0 なんか途中で書き込みに行きやがった
JDimバグってないか???
JDimバグってないか???
718はちみつ餃子 ◆8X2XSCHEME (ワッチョイ a13e-e+8E)
2023/08/30(水) 00:13:16.01ID:9akroxuQ0 >>715
隠すべきものが隠せていないのはそうだけど構造体を流用したことというよりも、
各翻訳単位でコンパイルしてからリンクするという C の手順を踏襲した都合だと思う。
他の翻訳単位の情報を見ずにコンパイルできる状況にするということを曲げないなら
オブジェクトの大きさを確定するのに必要な情報をクラス定義内に書く仕組みにせざるを得ない。
隠すべきものが隠せていないのはそうだけど構造体を流用したことというよりも、
各翻訳単位でコンパイルしてからリンクするという C の手順を踏襲した都合だと思う。
他の翻訳単位の情報を見ずにコンパイルできる状況にするということを曲げないなら
オブジェクトの大きさを確定するのに必要な情報をクラス定義内に書く仕組みにせざるを得ない。
719デフォルトの名無しさん (ワッチョイ 355f-vHpx)
2023/08/30(水) 12:34:02.83ID:biy0pv8/0 >707 が言ってるのはたぶん pimpl じゃなくて抽象クラス(=インターフェースクラス)を使った隠蔽じゃないかな?
pimpl より楽なので新規クラスではこっちしか使わなくなった。
pimpl より楽なので新規クラスではこっちしか使わなくなった。
720デフォルトの名無しさん (ブーイモ MMea-C1Tt)
2023/08/30(水) 15:13:40.69ID:STopcx5aM721デフォルトの名無しさん (ワッチョイ 3e79-FVin)
2023/08/30(水) 16:07:23.97ID:bGhOLdki0 pimplなんてCでは普通のテクニックだったのにC++はいちいち大げさだなあ
722デフォルトの名無しさん (ワッチョイ 86fb-1XyZ)
2023/08/30(水) 19:39:24.36ID:rrx0kAlJ0 オタク界隈やと呼吸レベルで使いこなすよな
723デフォルトの名無しさん (スップ Sdea-0Z8Z)
2023/08/31(木) 07:08:06.02ID:wYoApzHMd >>717
手元がバグってるだけじゃないかな(名推理)
手元がバグってるだけじゃないかな(名推理)
724デフォルトの名無しさん (ワッチョイ c328-9M69)
2023/09/03(日) 20:40:30.70ID:uJA/UdoJ0 pimplのクラスか構造体の宣言だけ行うところでC++Testに文句言われる……
725デフォルトの名無しさん (アウアウウー Sae7-fXI3)
2023/09/04(月) 10:15:14.85ID:/ASAZOX6a Rust使い過ぎてC/C++でclassとstructに;付け忘れはあるある
726デフォルトの名無しさん (ワッチョイ 3378-+GqY)
2023/09/05(火) 01:10:33.18ID:6M2Epndy0 templateを使わなきゃpimplなんか必要ないだろ。
727デフォルトの名無しさん (ワッチョイ 4301-bHR5)
2023/09/05(火) 01:16:38.13ID:c+OS/OAh0 >>726
やっぱデフォルトでpimplの俺は少数派かなぁ
やっぱデフォルトでpimplの俺は少数派かなぁ
728デフォルトの名無しさん (ワッチョイ 4301-bHR5)
2023/09/05(火) 01:18:44.98ID:c+OS/OAh0729デフォルトの名無しさん (ワッチョイ 3378-+GqY)
2023/09/05(火) 01:36:59.02ID:6M2Epndy0 あー、誰かが言ってるようにpimpl使わないと、ヘッダファイルだかCPPファイルだか1行修正しただけで全部再コンパイルされてしまうというのあったな。
730デフォルトの名無しさん (ワッチョイ b67a-6I4L)
2023/09/09(土) 00:14:54.72ID:N+hvybCm0 自分に合うC++の本を探しています。
独習c++(高橋)を候補にしてます。
以下の程度の人に向いているでしょうか。
Cはポインタを含めてほぼすべて分かります。
C++は昔、クラス周辺の文法を林本で理解したものの、ほとんど書いてないので設計ノウハウがなく、ここは強化したい点です。
C++11より前なので11以降が分かりません。テンプレートやベクターもまったく分かりません。
独習c++(高橋)を候補にしてます。
以下の程度の人に向いているでしょうか。
Cはポインタを含めてほぼすべて分かります。
C++は昔、クラス周辺の文法を林本で理解したものの、ほとんど書いてないので設計ノウハウがなく、ここは強化したい点です。
C++11より前なので11以降が分かりません。テンプレートやベクターもまったく分かりません。
731デフォルトの名無しさん (オイコラミネオ MM63-SjEv)
2023/09/09(土) 00:39:25.00ID:uw9REbuTM なんで一冊だけ決めて勉強するのか意味不明なんだな
とりあえず読め
沢山読んだら死ぬのか?
とりあえず読め
沢山読んだら死ぬのか?
732デフォルトの名無しさん (ワッチョイ 2328-E2FL)
2023/09/09(土) 00:40:08.83ID:JvG/rAdc0 >>728
むしろ発想が逆で、templateを使い倒して書いたモジュールをの公開インターフェースからtemplateの痕跡を消してしまうのに使う
むしろ発想が逆で、templateを使い倒して書いたモジュールをの公開インターフェースからtemplateの痕跡を消してしまうのに使う
733デフォルトの名無しさん (オイコラミネオ MM63-SjEv)
2023/09/09(土) 00:42:57.07ID:uw9REbuTM ここにいる連中は太古の昔に入門して入門書なんて無縁なんだ
良書などなく分厚くて誤訳満載の本を読んで勉強して血を流しながら進んだ
何冊も読んだ
タイパなんてくそくらえ
到達したいところがあるなら時間を掛けろ
良書などなく分厚くて誤訳満載の本を読んで勉強して血を流しながら進んだ
何冊も読んだ
タイパなんてくそくらえ
到達したいところがあるなら時間を掛けろ
734デフォルトの名無しさん (ワッチョイ 2328-E2FL)
2023/09/09(土) 00:44:19.17ID:JvG/rAdc0 今日聞いたのですだがオンライン辞書サービス Dictionary.com にアルゴリズムの短縮形 algo が追加されたらしい
すっかり定着したコンストラやデストラといった略語もそのうち辞書に載るかも……
すっかり定着したコンストラやデストラといった略語もそのうち辞書に載るかも……
735はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ff3e-1kEh)
2023/09/09(土) 01:21:30.56ID:Ig5iuvnc0 C++ は一般原則で示せない変則的なルールも多いのでそういうのはまるごと知っておくしか仕方がない。
そういったルールの分量が単純に多いから学習するにはたくさん読まないといけないのも仕方がない。
僅かだが互換性を損なう仕様改定もあるし、作法が変わった部分もあるので混乱しないように古すぎる資料は避けた方がよさそうという程度の助言は出来るけど具体的に現代的な入門書というと手堅いものは挙がらんのよな……
そういったルールの分量が単純に多いから学習するにはたくさん読まないといけないのも仕方がない。
僅かだが互換性を損なう仕様改定もあるし、作法が変わった部分もあるので混乱しないように古すぎる資料は避けた方がよさそうという程度の助言は出来るけど具体的に現代的な入門書というと手堅いものは挙がらんのよな……
736デフォルトの名無しさん (ワッチョイ 177c-h0AF)
2023/09/09(土) 01:29:10.69ID:444GCDJV0 Cしか知らんならC++より先に一般的なオブジェクト指向の勉強した方が良さそう
Cの延長で文法と機能だけつまみ食いしてたらstaticおじさんが生まれてしまう
Cの延長で文法と機能だけつまみ食いしてたらstaticおじさんが生まれてしまう
737デフォルトの名無しさん (ワッチョイ 1710-Z579)
2023/09/09(土) 06:43:09.16ID:Ej2BTroL0 C++は余りに途方もないというか、難しいですよね
「ポインタを分かってます」とか言ってしまう時点で想像がつくというか、遠いなというか
「ポインタを分かってます」とか言ってしまう時点で想像がつくというか、遠いなというか
738デフォルトの名無しさん (ワッチョイ 23f0-JHZ4)
2023/09/09(土) 09:16:01.68ID:46L/9V3B0 とりあえず
Effective C++と
Effective Modern C++
あたりがいいんじゃない
Effective C++と
Effective Modern C++
あたりがいいんじゃない
739デフォルトの名無しさん (ワッチョイ 4efb-DZDQ)
2023/09/09(土) 09:40:35.80ID:4/gA6xPM0 >>730
色々読むのもありなんだけど
自分にあった本の探し方も学習の一つ
ネットの情報は鮮度もあるし、なんらかの意図が含まれている可能性があるので
本当に自分に合う本を探すつもりなら本屋に行ってみるのもありだよ
それと何を作りたいかによって、選ぶジャンルが違ってくると思うんだ
網羅的に読みたいのであれば、c++の開発者が書いた本もあるし、最近なら苦しんで覚えるシリーズも売れているだろうし
目的を強くイメージできて、この本からその目的の学習ができ、スキルアップ可能なのかどうかをしっかりと自問自答すると…
色々読むのもありなんだけど
自分にあった本の探し方も学習の一つ
ネットの情報は鮮度もあるし、なんらかの意図が含まれている可能性があるので
本当に自分に合う本を探すつもりなら本屋に行ってみるのもありだよ
それと何を作りたいかによって、選ぶジャンルが違ってくると思うんだ
網羅的に読みたいのであれば、c++の開発者が書いた本もあるし、最近なら苦しんで覚えるシリーズも売れているだろうし
目的を強くイメージできて、この本からその目的の学習ができ、スキルアップ可能なのかどうかをしっかりと自問自答すると…
740デフォルトの名無しさん (ワッチョイ e301-aVri)
2023/09/09(土) 12:03:26.84ID:ipyM0SHG0 Scott Mayers信者うざい
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 東京株式市場 インバウンド関連株が下落 中国政府の渡航自粛要請で [バイト歴50年★]
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 戦争は無くならないし殺人は起きるし女はレイプされるし子供は餓死するし
- 中共は台湾を自分の領土と思ってるから外国が「侵略するな」と警告しても意味ないんだよね
- 🏡
- スマホってスクリーントーンみにくくね?
- ( ´・ω・` )朝ですぞー
