!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part161
https://mevius.5ch.net/test/read.cgi/tech/1653135809/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C++相談室 part162
レス数が900を超えています。1000を超えると表示できなくなるよ。
1sage (ワッチョイ fbf0-ofdD)
2022/10/31(月) 14:29:35.57ID:J5sgTSch0842はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 13:38:20.67ID:OBkbHJZM0 >>840
未定義動作と定義されているんだから未定義動作としか言えんだろ。
未定義動作と定義されているんだから未定義動作としか言えんだろ。
843デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 13:49:22.29ID:YnLWxzzl0 >>841
未定義動作とはコンパイルもリンクも通って実行できるけど
どんな動作をするか分からない(未定義)ので
事前に分かるコンパイルエラーやリンカーエラーに比べて
「酷い」と表現しました
いわゆる「鼻から悪魔」
未定義動作とはコンパイルもリンクも通って実行できるけど
どんな動作をするか分からない(未定義)ので
事前に分かるコンパイルエラーやリンカーエラーに比べて
「酷い」と表現しました
いわゆる「鼻から悪魔」
844デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 13:51:12.76ID:YnLWxzzl0 >>842
まぁ規格に書かれちゃってるんだからそりゃそうですね
まぁ規格に書かれちゃってるんだからそりゃそうですね
845はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 14:17:52.01ID:OBkbHJZM0 もしも「必ずエラーとして報告されるべき」みたいな仕様にしたら std の特別扱いが要るから
標準ヘッダのファイルに素朴に書くだけな実装はやりにくくなるし……。
標準ヘッダのファイルに素朴に書くだけな実装はやりにくくなるし……。
846デフォルトの名無しさん (ワッチョイ 2b01-s0Sd)
2022/12/26(月) 14:22:21.57ID:uyDYkqVs0 void InitBoard(void) // 盤を初期化
{
int x, y;
for (y = 0; y < YMAX; y++)
{
for (x = 0; x < XMAX; x++)
{
board[x][y] = 0;
}
for (x = 0; x < XMAX; x++)
{
num[x] = 0;
}
}
}
この処理の無駄を省くコードおしえてください
{
int x, y;
for (y = 0; y < YMAX; y++)
{
for (x = 0; x < XMAX; x++)
{
board[x][y] = 0;
}
for (x = 0; x < XMAX; x++)
{
num[x] = 0;
}
}
}
この処理の無駄を省くコードおしえてください
847デフォルトの名無しさん (アウアウウー Sa71-XYq7)
2022/12/26(月) 14:26:27.90ID:A7MLr6bua848デフォルトの名無しさん (スップ Sd03-FNX1)
2022/12/26(月) 14:26:50.08ID:9plh3gB/d memset(board, 0, sizeof board);
memset(num, 0, sizeof num);
memset(num, 0, sizeof num);
849デフォルトの名無しさん (ワッチョイ 95da-Axul)
2022/12/26(月) 14:33:45.39ID:a6eE731v0 >>846
つbzero,ZeroMemory
つbzero,ZeroMemory
850デフォルトの名無しさん (ブーイモ MMb3-5fcg)
2022/12/26(月) 14:39:30.42ID:EnLBjT8OM 標準に <iosfwd> あるくらいだし動機はわかるけども
あんま詳しくないけどモジュールはよってことなんかね?
あんま詳しくないけどモジュールはよってことなんかね?
851デフォルトの名無しさん (スプッッ Sddb-tLuz)
2022/12/26(月) 14:44:20.75ID:2wvNEB42d 禁止と言われて、そうですかと聞き分ける人と、ゴネる人がいるってことだ。
852デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 14:49:02.84ID:YnLWxzzl0853はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 14:50:30.84ID:OBkbHJZM0 >>846
std::fill を使うのが妥当じゃないかな?
memset でも普通は問題は起きないと思うけど
メモリブロック (バイト列) に対する操作だから board の型によっては
問題が起こることはなくもない。
std::fill を使うのが妥当じゃないかな?
memset でも普通は問題は起きないと思うけど
メモリブロック (バイト列) に対する操作だから board の型によっては
問題が起こることはなくもない。
854デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 14:51:24.85ID:YnLWxzzl0 >>851
そういうことではない
文法的にダブルスタンダードになってるのが気持ち悪い
名前空間stdもoresamaも同じ取り扱いである方が
文法的に美しいって感じているから
実際には最適化のためにstdは特別扱いが規定されている
そういうことではない
文法的にダブルスタンダードになってるのが気持ち悪い
名前空間stdもoresamaも同じ取り扱いである方が
文法的に美しいって感じているから
実際には最適化のためにstdは特別扱いが規定されている
855デフォルトの名無しさん (アウアウウー Sa71-ufqB)
2022/12/26(月) 15:04:20.66ID:rUBUe8yFa (自分の環境だと)酷いことにはなってないから
未定義踏んでてもOK派?
勘弁してください
未定義踏んでてもOK派?
勘弁してください
856デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 15:10:52.71ID:YnLWxzzl0 >>855
煽ってものらないよw 誰もそんなことは書いていない
酷いことになる事例を教えてねってことを書いています
どういうこと(最適化?)を想定してダブルスタンダードにしたのか
動機を知りたくないですか?
煽ってものらないよw 誰もそんなことは書いていない
酷いことになる事例を教えてねってことを書いています
どういうこと(最適化?)を想定してダブルスタンダードにしたのか
動機を知りたくないですか?
857デフォルトの名無しさん (ワッチョイ 95da-Axul)
2022/12/26(月) 15:12:35.95ID:a6eE731v0 fill_n(num,__countof(num),0)
上のboardは自分で考えるんだ
上のboardは自分で考えるんだ
858はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 15:26:40.53ID:OBkbHJZM0 >>854
自分が作ったライブラリの名前空間に何を追加されても正しく動く (または必ずエラーになる) ように保証してんのか?
各ライブラリごとの挙動に保証していることと保証してないことがあるのは当たり前のことだろ。
お前のライブラリについての保証はお前がするから「言語では」関知しないってだけで、
oresama に何を追加してもよいことが保証されてるわけではない。
自分が作ったライブラリの名前空間に何を追加されても正しく動く (または必ずエラーになる) ように保証してんのか?
各ライブラリごとの挙動に保証していることと保証してないことがあるのは当たり前のことだろ。
お前のライブラリについての保証はお前がするから「言語では」関知しないってだけで、
oresama に何を追加してもよいことが保証されてるわけではない。
859デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 16:14:39.95ID:YnLWxzzl0 >>858
たぶん伝わってないな
以下をユーザが自分のソースに書くのは>>820の言うように規格で禁じられている
namespace std {
template <class T, std::size_t N>
struct array;
}
同じくoresama::ARRAYなるカスタムのクラステンプレートが定義されていたとして
以下をユーザがソースに書くのは合法
namespace oresama {
template <class T, std::size_t N>
struct ARRAY;
}
これをダブルスタンダードで気持ちが悪いと思っている
最適化との説だけども
具体的なことを知っている人がいたら聞きたいな
たぶん伝わってないな
以下をユーザが自分のソースに書くのは>>820の言うように規格で禁じられている
namespace std {
template <class T, std::size_t N>
struct array;
}
同じくoresama::ARRAYなるカスタムのクラステンプレートが定義されていたとして
以下をユーザがソースに書くのは合法
namespace oresama {
template <class T, std::size_t N>
struct ARRAY;
}
これをダブルスタンダードで気持ちが悪いと思っている
最適化との説だけども
具体的なことを知っている人がいたら聞きたいな
860デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/26(月) 16:17:49.67ID:+99B24rl0 >>846
そのboard[x[][y]はゼロフィルしても良い配列?
盤外に飛び出す桂馬飛びの高速判定テクニックとして実はboard[-1][-2]が壁のコードになっている
とかありそう
※ 全くの想像です
※ 未定義動作と言われても知らそんこの場合アセンブリコードが正しくて速ければええんじゃ
※ この場合2次元配列はやめてカラム数が2のべきの1次元配列であるべき
※ ここまで全くの妄想です
そのboard[x[][y]はゼロフィルしても良い配列?
盤外に飛び出す桂馬飛びの高速判定テクニックとして実はboard[-1][-2]が壁のコードになっている
とかありそう
※ 全くの想像です
※ 未定義動作と言われても知らそんこの場合アセンブリコードが正しくて速ければええんじゃ
※ この場合2次元配列はやめてカラム数が2のべきの1次元配列であるべき
※ ここまで全くの妄想です
861デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/26(月) 16:19:44.55ID:+99B24rl0 説明が抜けた;;;
board[-1][-2]が壁のコードになるような思想の場合は
board[0..][0..]にも当然盤を取り囲むように壁のコードが配置される
board[-1][-2]が壁のコードになるような思想の場合は
board[0..][0..]にも当然盤を取り囲むように壁のコードが配置される
862はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 16:26:57.23ID:OBkbHJZM0863デフォルトの名無しさん (ブーイモ MM21-kjyB)
2022/12/26(月) 16:30:53.99ID:/571GBxYM864はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 16:34:00.09ID:OBkbHJZM0865デフォルトの名無しさん (ブーイモ MM21-kjyB)
2022/12/26(月) 16:44:01.34ID:/571GBxYM >>864
前方宣言を許さない設計なんて本当にあるの?
前方宣言を許さない設計なんて本当にあるの?
866デフォルトの名無しさん (ワッチョイ 6d5f-aH43)
2022/12/26(月) 16:54:23.72ID:QSsdq8qk0 >>865 あるよ。標準ライブラリがそう。
867デフォルトの名無しさん (ワッチョイ ebda-w5mw)
2022/12/26(月) 16:55:15.06ID:zTKHQ8850 かまってちゃん
868はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 16:55:21.28ID:OBkbHJZM0869デフォルトの名無しさん (ブーイモ MM21-kjyB)
2022/12/26(月) 17:07:33.78ID:/571GBxYM870デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/26(月) 17:11:08.06ID:+99B24rl0 namespaceはシンボルの衝突を防ぐためのしくみなのに
後から要素を追加できる仕様の方がおかしいfinalizeできるべき
だいたいnamespace oresama にX=サンが "bar.h" にて void oresama:foo()を定義して、
C++の標準ライブラリ仕様しか見ていないY=サンが "baz.h" にて同じシグネチャで異なる実装の
void oresama:foo() が実装されてしまう危険性が避けられない
のだから第三者によるnamespace内への後付けは本来言われるまでも無く禁止されるべき事項、
同一シグネチャで異なる実装があったらリンク時にエラーになる、と気体することは場合に掘っては全くできない
http://0xcc.net/blog/archives/000060.html
ちなVS2010だともっと簡単に(スタティックリンクでも)起こせるorz
後から要素を追加できる仕様の方がおかしいfinalizeできるべき
だいたいnamespace oresama にX=サンが "bar.h" にて void oresama:foo()を定義して、
C++の標準ライブラリ仕様しか見ていないY=サンが "baz.h" にて同じシグネチャで異なる実装の
void oresama:foo() が実装されてしまう危険性が避けられない
のだから第三者によるnamespace内への後付けは本来言われるまでも無く禁止されるべき事項、
同一シグネチャで異なる実装があったらリンク時にエラーになる、と気体することは場合に掘っては全くできない
http://0xcc.net/blog/archives/000060.html
ちなVS2010だともっと簡単に(スタティックリンクでも)起こせるorz
871デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/26(月) 17:13:25.25ID:+99B24rl0 訂正orz
誤1: C++の標準ライブラリ仕様しか見ていないY=サン
正1: oresamaのオリジナルの仕様書しか見ていないY=サン
誤2: 場合に掘っては全く
正2: 場合によっては全く
誤1: C++の標準ライブラリ仕様しか見ていないY=サン
正1: oresamaのオリジナルの仕様書しか見ていないY=サン
誤2: 場合に掘っては全く
正2: 場合によっては全く
872デフォルトの名無しさん (ブーイモ MM21-kjyB)
2022/12/26(月) 17:15:26.88ID:/571GBxYM873はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/26(月) 17:58:37.42ID:OBkbHJZM0 >>872
前方宣言自体はいいよ。
そのライブラリ内でどう定義されているかわかっていて**妥当な前方宣言を出来るなら**。
将来のライブラリの更新があっても妥当でありつづける (または妥当でなくなったときに追従する) なら。
いちいちライブラリが保証していない内部仕様を調査して妥当かどうか確かめなきゃならない、どんな干渉が起きるかわからない
ってのは (ライブラリの仕様としては) 未定義じゃろ。
前方宣言自体はいいよ。
そのライブラリ内でどう定義されているかわかっていて**妥当な前方宣言を出来るなら**。
将来のライブラリの更新があっても妥当でありつづける (または妥当でなくなったときに追従する) なら。
いちいちライブラリが保証していない内部仕様を調査して妥当かどうか確かめなきゃならない、どんな干渉が起きるかわからない
ってのは (ライブラリの仕様としては) 未定義じゃろ。
874デフォルトの名無しさん (スプッッ Sddb-tLuz)
2022/12/26(月) 18:28:18.27ID:gLGPMU9jd875デフォルトの名無しさん (ワッチョイ 1301-iijX)
2022/12/26(月) 18:40:09.55ID:+xP92Jxa0 >>846
C言語はboard[x][y]のy側が連続に配置されるから for(x = ...){ for(y = ...){ ... } } の順にネストした方が効率的になる可能性が高いので俺なら
for (x = 0; x < XMAX; x++){
for (y = 0; y < YMAX; y++){
board[x][y] = 0;
}
num[x] = 0;
}
って書くと思う
C言語はboard[x][y]のy側が連続に配置されるから for(x = ...){ for(y = ...){ ... } } の順にネストした方が効率的になる可能性が高いので俺なら
for (x = 0; x < XMAX; x++){
for (y = 0; y < YMAX; y++){
board[x][y] = 0;
}
num[x] = 0;
}
って書くと思う
876デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 21:17:05.02ID:YnLWxzzl0877デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/26(月) 21:18:30.60ID:YnLWxzzl0878デフォルトの名無しさん (ワッチョイ cf7c-5mfr)
2022/12/26(月) 21:37:30.08ID:2gdEMUwk0 前方宣言のつもりがこういうので意味変わっても知らんぞ
http://d.hatena.ne.jp/DigitalGhost/20090216/1234793122
http://d.hatena.ne.jp/DigitalGhost/20090216/1234793122
879デフォルトの名無しさん (ブーイモ MM21-5fcg)
2022/12/26(月) 21:37:34.67ID:Luv0983hM oresama 名前空間に前方宣言が追加されると未定義動作になるような例って実際作れる?
std についてはコンパイラマジックでも何でもありだが
std についてはコンパイラマジックでも何でもありだが
880デフォルトの名無しさん (ワッチョイ f176-lg2t)
2022/12/26(月) 21:47:21.55ID:6ywYYiev0 未定義動作は未定義だよ
意図通り動いても、
デバッグするのに便利な例外が投げられても、
まともに動いてるように見えてメモリ壊してても、
コンパイルエラーになっても問題ない
コンパイラと実行環境は求められる動作が決まってないから
意図通り動いても、
デバッグするのに便利な例外が投げられても、
まともに動いてるように見えてメモリ壊してても、
コンパイルエラーになっても問題ない
コンパイラと実行環境は求められる動作が決まってないから
881デフォルトの名無しさん (スッププ Sd2b-daZ2)
2022/12/26(月) 22:12:49.76ID:NZGNd7w4d 変な宣言が追加されるとSFINAEが狂うパターンとかあるかも。
882デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/26(月) 23:28:38.90ID:8d7AMOhX0883デフォルトの名無しさん (ワッチョイ 7fbb-tgY1)
2022/12/26(月) 23:47:11.05ID:5EhwIIVK0 はちみつはもう冬休みなのか。裏山
885デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:01:58.89ID:QO3hLMTW0 >>820
思ったんだけどさ前方宣言は`declarations'に入ってないってことはないかな?
以下が原文なんだけども
>Unless otherwise specified, the behavior of a C++ program is undefined
>if it adds declarations or definitions to namespace std or to a
>namespace within namespace std.
文からは入ってるとも入ってないとも俺には判断がつかない
確かな見解がある人はいるかな?
思ったんだけどさ前方宣言は`declarations'に入ってないってことはないかな?
以下が原文なんだけども
>Unless otherwise specified, the behavior of a C++ program is undefined
>if it adds declarations or definitions to namespace std or to a
>namespace within namespace std.
文からは入ってるとも入ってないとも俺には判断がつかない
確かな見解がある人はいるかな?
886デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:11:56.45ID:9ztV+U0x0887デフォルトの名無しさん (ワッチョイ 6d5f-aH43)
2022/12/27(火) 00:13:15.81ID:fnhKiHjQ0 >>884 >859の言う「ダブルスタンダード」は>862-864で否定されて終わってるだろ。
889デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:16:20.11ID:9ztV+U0x0 >>888
ゴミめ
ゴミめ
890デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:18:30.98ID:9ztV+U0x0 ヘッダファイルそのものを改造することだってできる
ISO/IEC14882のヘッダファイルだけ改造しちゃいけなくて
それ以外のヘッダファイルは改造していいことにしたいのかよ
ダブスタだからって? バカか
ISO/IEC14882のヘッダファイルだけ改造しちゃいけなくて
それ以外のヘッダファイルは改造していいことにしたいのかよ
ダブスタだからって? バカか
891デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:20:13.94ID:9ztV+U0x0 標準のヘッダファイルを書き換えるななんてバカ用の説明が規格票の中に書いてあるかどうか知らんが
そういうレベルの屁理屈ならべてんなボケが
そういうレベルの屁理屈ならべてんなボケが
892デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:21:11.64ID:QO3hLMTW0893デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:22:43.58ID:QO3hLMTW0 >>889
3行目に書いてあるから読みなよ
3行目に書いてあるから読みなよ
894デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:23:47.05ID:QO3hLMTW0 >>890,891
何で標準のヘッダファイルを書き換える話を始めてるの?
何で標準のヘッダファイルを書き換える話を始めてるの?
895デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:28:00.93ID:QO3hLMTW0 >>820
>>>818
>原則としては std 名前空間になんらかの宣言や定義を追加したら未定義ということになってる。
>https://timsong-cpp.github.io/cppwp/n4861/namespace.std
>その事例も該当すると思う。
これが正しいかもしれんし違うかもしれん
>>>818
>原則としては std 名前空間になんらかの宣言や定義を追加したら未定義ということになってる。
>https://timsong-cpp.github.io/cppwp/n4861/namespace.std
>その事例も該当すると思う。
これが正しいかもしれんし違うかもしれん
896デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:33:27.20ID:9ztV+U0x0897デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:34:29.25ID:9ztV+U0x0898デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:36:22.67ID:QO3hLMTW0899デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:36:52.90ID:9ztV+U0x0 作者がするなということをなぜしたいんだよ
脱獄したきゃ勝手にやってろ
誰も止めやしねえよ
バカ一匹どうなろうが誰も知ったこっちゃねえ
脱獄したきゃ勝手にやってろ
誰も止めやしねえよ
バカ一匹どうなろうが誰も知ったこっちゃねえ
900デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:37:18.87ID:QO3hLMTW0901デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:41:27.03ID:QO3hLMTW0902デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:42:11.81ID:9ztV+U0x0 ああそうかい
勝手に思ってな
勝手に思ってな
903デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:43:47.73ID:QO3hLMTW0 >>902
規格は読んだのかな?
規格は読んだのかな?
904デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/27(火) 00:47:28.29ID:R1/11RYB0905デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:49:39.31ID:QO3hLMTW0906デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/27(火) 00:50:13.48ID:R1/11RYB0 「勝手に」が抜けてたorz
X=サンが*勝手*に追加した "bar.h" にて void oresama:foo()を定義のを知らずに
Y=サンが "baz.h" にて同じシグネチャで異なる実装の void oresama:foo() が実装されてしまう
と言う場合は覿面に意図しない動きになる(ことがある
X=サンが*勝手*に追加した "bar.h" にて void oresama:foo()を定義のを知らずに
Y=サンが "baz.h" にて同じシグネチャで異なる実装の void oresama:foo() が実装されてしまう
と言う場合は覿面に意図しない動きになる(ことがある
907デフォルトの名無しさん (ワッチョイ 5328-gB2L)
2022/12/27(火) 00:51:22.27ID:R1/11RYB0 >>905
定義の無い前方宣言とか何のためにするんじゃ……
定義の無い前方宣言とか何のためにするんじゃ……
908デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:53:18.15ID:QO3hLMTW0909デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:54:50.91ID:QO3hLMTW0910デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:54:51.28ID:9ztV+U0x0911デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:56:18.99ID:QO3hLMTW0912デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 00:58:30.57ID:9ztV+U0x0 >>911
前方宣言て何? JIS X3014の規格票を検索してもヒットしないんだが
前方宣言て何? JIS X3014の規格票を検索してもヒットしないんだが
913デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 00:59:25.89ID:QO3hLMTW0 forward declarationじゃないかな? ない?
914デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 01:03:39.45ID:9ztV+U0x0 さあ知らんね
おまえの曖昧さを俺が処理してやる義理はない
おまえの曖昧さを俺が処理してやる義理はない
915デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 01:06:05.88ID:9ztV+U0x0 技術板で煽りネタが英語力とかくだらんな
英語圏在住のバカと同類だってアピールしたら格好いいんかよw
英語圏在住のバカと同類だってアピールしたら格好いいんかよw
916デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 01:08:38.87ID:QO3hLMTW0917デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/27(火) 01:12:56.49ID:9ztV+U0x0 煽っても無駄だよ
義理のないことの特別サービスをさせたいようだが
世の中そう甘くはない
暇人と違って明日も朝から仕事なんだよ
バイバイ
義理のないことの特別サービスをさせたいようだが
世の中そう甘くはない
暇人と違って明日も朝から仕事なんだよ
バイバイ
918デフォルトの名無しさん (ワッチョイ b101-jXNG)
2022/12/27(火) 01:14:43.51ID:QO3hLMTW0919はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 6d3e-aH43)
2022/12/27(火) 01:34:54.20ID:G9AKlNLO0 前方宣言が宣言でない可能性なんて考えたこともなかったが
たとえば単にポインタと書いてあるときにメンバ関数ポインタを含んでなかったりすることを
思い出せば変な用語になってる可能性は考慮にいれるという姿勢は必要かもしれない。
あらためて検討してみたところ、前方宣言という用語の直接的な定義はないが仕様中で
前方宣言 (forward declaration) と呼ばれているものは宣言に該当するし、
単に宣言の位置が前方である宣言のことを前方宣言と呼んでいると解しても良いと思う。
たとえば単にポインタと書いてあるときにメンバ関数ポインタを含んでなかったりすることを
思い出せば変な用語になってる可能性は考慮にいれるという姿勢は必要かもしれない。
あらためて検討してみたところ、前方宣言という用語の直接的な定義はないが仕様中で
前方宣言 (forward declaration) と呼ばれているものは宣言に該当するし、
単に宣言の位置が前方である宣言のことを前方宣言と呼んでいると解しても良いと思う。
920デフォルトの名無しさん (ワッチョイ 5b10-WyE/)
2022/12/27(火) 02:38:42.00ID:Kk7zAeAV0 未定義動作だから宣言禁止してるんじゃない
宣言禁止してるから未定義動作になったんだ
宣言禁止してるから未定義動作になったんだ
921デフォルトの名無しさん (ワッチョイ 6d5f-aH43)
2022/12/27(火) 02:48:53.38ID:fnhKiHjQ0 >>892
>865の質問は>866,868で答えが出てて、その前の話に影響無いし・・・と読み進めると
>872で「前方宣言は規格で合法」とかいう当たり前に見える意味不明な話につづいており・・・
どうも>859以降の「合法」が↓のようなよくある解釈とは違うようであることに気付いた。
https://cpprefjp.github.io/implementation-compliance.html
> 合法 (legal)・違法 (illegal): これらの語はプログラムに対しても慣用されるが、具体的な意味は明確でない。 プログラムの正しさには複数の水準があるためである。 適格、またはすべての規則を満たす、または未定義の動作を含まないなどが考えられる。
明確な言葉で言い換えられるまで下手に考えても不毛そう。
「前方宣言は」というのも「ユーザー側コードに~な前方宣言を加えて利用していた場合にライブラリ更新があっても~」
とかいう意味になりそうだけど端折りすぎて意味不明になってる。
「鼻から悪魔」は未定義動作と同じ意味のつもりで使ってそうだけどコンパイルエラーやリンクエラーは除くようでもあり
これも未定義動作とは違う何か。
さっきキレちらかしてた人もこんな感じで我慢できなくなったんだろう。
明確な用語を使うように気を付けて主張を整理しないと、君とまともに会話してくれる人居なくなると思うよ。
>865の質問は>866,868で答えが出てて、その前の話に影響無いし・・・と読み進めると
>872で「前方宣言は規格で合法」とかいう当たり前に見える意味不明な話につづいており・・・
どうも>859以降の「合法」が↓のようなよくある解釈とは違うようであることに気付いた。
https://cpprefjp.github.io/implementation-compliance.html
> 合法 (legal)・違法 (illegal): これらの語はプログラムに対しても慣用されるが、具体的な意味は明確でない。 プログラムの正しさには複数の水準があるためである。 適格、またはすべての規則を満たす、または未定義の動作を含まないなどが考えられる。
明確な言葉で言い換えられるまで下手に考えても不毛そう。
「前方宣言は」というのも「ユーザー側コードに~な前方宣言を加えて利用していた場合にライブラリ更新があっても~」
とかいう意味になりそうだけど端折りすぎて意味不明になってる。
「鼻から悪魔」は未定義動作と同じ意味のつもりで使ってそうだけどコンパイルエラーやリンクエラーは除くようでもあり
これも未定義動作とは違う何か。
さっきキレちらかしてた人もこんな感じで我慢できなくなったんだろう。
明確な用語を使うように気を付けて主張を整理しないと、君とまともに会話してくれる人居なくなると思うよ。
922デフォルトの名無しさん (ワッチョイ cf7c-5mfr)
2022/12/27(火) 07:37:18.96ID:GSvWJ+1+0 「天才のぼくちんの完璧なレスを理解できない無能なお前らが悪い!」って暴れ出すいつもの奴だからもう放っとけよ
923デフォルトの名無しさん (ワッチョイ 07cf-4Ar3)
2022/12/27(火) 07:46:03.70ID:nX/ozHbV0 事実と挙動だけ書けばいい
924デフォルトの名無しさん (スプッッ Sddb-tLuz)
2022/12/27(火) 08:04:36.52ID:l/ni+ylad ハッシュ小僧か
925デフォルトの名無しさん (ワッチョイ b101-JhXQ)
2022/12/27(火) 11:12:03.63ID:QO3hLMTW0926デフォルトの名無しさん (ワッチョイ b101-JhXQ)
2022/12/27(火) 11:18:29.54ID:QO3hLMTW0927デフォルトの名無しさん (スプッッ Sdaf-tLuz)
2022/12/27(火) 11:39:33.69ID:2fUOYjFgd はいはい、別人なんでちゅね~
ニヤニヤ
ニヤニヤ
928デフォルトの名無しさん (ワッチョイ b101-JhXQ)
2022/12/27(火) 11:43:36.77ID:QO3hLMTW0929デフォルトの名無しさん (スプッッ Sdaf-tLuz)
2022/12/27(火) 11:44:56.74ID:2fUOYjFgd それでそれで?
930デフォルトの名無しさん (ワッチョイ b101-JhXQ)
2022/12/27(火) 11:45:14.64ID:QO3hLMTW0 おんなじワッチョイ検索してね
931デフォルトの名無しさん (ワッチョイ 6d5f-aH43)
2022/12/27(火) 11:45:28.77ID:fnhKiHjQ0 「いつもの奴」が一人ということも無いからな。悲しいことに。
コテハン付けてくれない?
コテハン付けてくれない?
932デフォルトの名無しさん (ワッチョイ b101-JhXQ)
2022/12/27(火) 11:46:04.33ID:QO3hLMTW0 天才くんほどの実力はないです
933デフォルトの名無しさん (ワッチョイ b101-JhXQ)
2022/12/27(火) 11:46:30.13ID:QO3hLMTW0 >>931
どうやってつけるの?
どうやってつけるの?
934デフォルトの名無しさん (ワッチョイ 6d5f-aH43)
2022/12/27(火) 11:58:22.17ID:fnhKiHjQ0936デフォルトの名無しさん (ブーイモ MM21-5fcg)
2022/12/27(火) 12:03:58.07ID:ifNnQS7gM >>837
本題と関係ないけどこれって CTAD 関連含めて挙動完全に大丈夫なんか?少なくとも C++17 ではダメだが
本題と関係ないけどこれって CTAD 関連含めて挙動完全に大丈夫なんか?少なくとも C++17 ではダメだが
937天災 ◆41t0I.PYBW0z (ワッチョイ b101-jXNG)
2022/12/27(火) 12:04:16.27ID:QO3hLMTW0 俺は天才なんて呼ばれたことはないが
天才と呼ばれた人だこのスレで呼ばれたw
天才と呼ばれた人だこのスレで呼ばれたw
938天災 ◆41t0I.PYBW0z (ワッチョイ b101-jXNG)
2022/12/27(火) 12:04:54.10ID:QO3hLMTW0 天才と呼ばれた人だ<と>このスレで呼ばれたw
939デフォルトの名無しさん (ワッチョイ 6d5f-aH43)
2022/12/27(火) 12:12:33.94ID:fnhKiHjQ0 ありがとうございます。助かります。
940天災 ◆41t0I.PYBW0z (ワッチョイ b101-jXNG)
2022/12/27(火) 12:13:50.33ID:QO3hLMTW0 いえこちらこそ
941デフォルトの名無しさん (スッップ Sd57-Xl/E)
2022/12/27(火) 12:17:08.49ID:XYKyOOkrdレス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 自民・森山幹事長 消費税減税を改めて“否定”「財源ないと辻褄あわない」 ★2 [首都圏の虎★]
- 【サッカー】放映権料は400億円を突破か…難航する『‘26年W杯』中継交渉 地上波から「サッカーが消える日」 [jinjin★]
- 自民・森山幹事長 消費税減税を改めて“否定”「財源ないと辻褄あわない」 ★3 [首都圏の虎★]
- 【ゲーム】RPGで「ああ、これね…」となる“嫌な展開” 「育ててないメンバー強制バトル」「ミニゲーム必須」 [ひぃぃ★]
- 【大阪】予約した本が借りられない、本が書棚にない…市立図書館が大混乱 大阪維新「文化行政」コスト削減の結末 [ぐれ★]
- 渡邊渚「私は玉の輿という言葉が嫌い」「勝手に野球選手大好きみたいなレッテルを貼られちゃう」グラビアでも受けた世間の偏見語る [muffin★]
- 【動画】普通の日本人さん、電車内で通話してる若者に激怒、非常停止ボタンを押してしまう😨 [834922174]
- 【実況】博衣こよりのえちえちロックマンX7🧪
- 【悲報】日本人「これが本当の日本食です。力が沸いてきます」 2.4万いいね [839150984]
- 新型コロナ初期「ダイヤモンドプリンセス号」「不潔ルート」「罹ったら死にます」これ絶望感あったよな [677076729]
- 明日も特に予定がない人たちの🏡
- 【速報】暇空茜 実刑の可能性が急浮上 [382895459]