次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。
前スレ
C++相談室 part132
http://mevius.5ch.net/test/read.cgi/tech/1507561894/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.102【環境依存OK】
http://mevius.5ch.net/test/read.cgi/tech/1509780815/
■長いソースを貼るときはここへ。■
http://codepad.org/
https://ideone.com/
[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
C++相談室 part133
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 1fcf-H1rY)
2017/11/24(金) 16:52:50.43ID:WoNXR2ax0730デフォルトの名無しさん (ワッチョイ 93fb-tRgI)
2017/12/26(火) 10:12:55.95ID:yJ/B7pz80 ああ、最近こんな話を聞いたと自慢に来ていたのか
気の毒だがその話とvectorの実装はまるで無関係だ
悪いが俺はもう付き合ってらんねえ
気の毒だがその話とvectorの実装はまるで無関係だ
悪いが俺はもう付き合ってらんねえ
731デフォルトの名無しさん (ワッチョイ 6fe7-7LW1)
2017/12/26(火) 18:46:36.46ID:qo4+F5LQ0 unordered_set<valarray>でひどい目に遭ったのは俺だけじゃないはずだ
732デフォルトの名無しさん (ワッチョイ 239f-7LW1)
2017/12/26(火) 19:09:46.14ID:NpjbrU9/0 >>724
僕は韓国人です、ブーメランおいしい、まで読んだ
>>727
>>729
お前は何のためにここに来ているんだ?
全く脈略のない昔語りなんて、老害以外の何者でもない。
しかも内容は間違いだらけだし。
お前みたいな認知バイアス馬鹿には
> 問答無用で死ねはひどいよなぁ (703=お前)
と取れるようだから、俺がわざわざ分かりやすく、
お前が死ななければならい理由707,713を書いてやったんだ。
ちゃんと読んで死ね
> 鏡見てみたらいいと思うよ。自分ぶっ殺したくなると思うよ。 (703=お前)
むしろお前が680を書いていてまだ生きているのが不思議なんだが。
さすがゴキブリといったところか。
韓国人死ね
僕は韓国人です、ブーメランおいしい、まで読んだ
>>727
>>729
お前は何のためにここに来ているんだ?
全く脈略のない昔語りなんて、老害以外の何者でもない。
しかも内容は間違いだらけだし。
お前みたいな認知バイアス馬鹿には
> 問答無用で死ねはひどいよなぁ (703=お前)
と取れるようだから、俺がわざわざ分かりやすく、
お前が死ななければならい理由707,713を書いてやったんだ。
ちゃんと読んで死ね
> 鏡見てみたらいいと思うよ。自分ぶっ殺したくなると思うよ。 (703=お前)
むしろお前が680を書いていてまだ生きているのが不思議なんだが。
さすがゴキブリといったところか。
韓国人死ね
733片山博文MZ ◆T6xkBnTXz7B0 (ワッチョイ c3b3-PGwP)
2017/12/26(火) 20:31:37.65ID:i/UGO9LX0 >>732 時間の無駄だ。life timeを無駄にするな。
734デフォルトの名無しさん (ワッチョイ 239f-7LW1)
2017/12/26(火) 20:39:22.90ID:NpjbrU9/0 >>733
あなたがどう思おうがあなたの自由だが、俺は短期的視野で動いているわけではない。
あなたがどう思おうがあなたの自由だが、俺は短期的視野で動いているわけではない。
735デフォルトの名無しさん (ワッチョイ 0380-uc05)
2017/12/26(火) 21:31:42.92ID:WRs+G+g20 >>727
仮想マシンどころか現在存在するメジャーなインタプリタ言語の仕様にすら3Dはおろか2Dすら無いんだが。
仮想マシンどころか現在存在するメジャーなインタプリタ言語の仕様にすら3Dはおろか2Dすら無いんだが。
736デフォルトの名無しさん (ワッチョイ 6fe7-7LW1)
2017/12/26(火) 22:46:28.20ID:qo4+F5LQ0 Pythonには標準でTcl/Tkくっついてるぞ
737デフォルトの名無しさん (アウアウウー Sa67-bqMz)
2017/12/26(火) 22:51:40.52ID:OUkXE0b1a えっ?
738デフォルトの名無しさん (ブーイモ MM27-P2tI)
2017/12/26(火) 23:32:54.20ID:qDwd0bsiM >>735
仮想マシンどころかってjavaとかc#とかのことさしてるの?
仮想マシンどころかってjavaとかc#とかのことさしてるの?
739デフォルトの名無しさん (ワッチョイ 2304-615/)
2017/12/27(水) 00:16:12.80ID:OmD1y+tA0740デフォルトの名無しさん (ワッチョイ 93fb-tRgI)
2017/12/27(水) 10:05:47.36ID:hAbcZpZm0741デフォルトの名無しさん (ワッチョイ 8a98-iexB)
2017/12/30(土) 07:52:44.61ID:UOR1hNFd0 class A {
//...
};
class B : public A {
};
A *a = new B();
delete a; // だめ
B *b = new B();
delete b; // だめ
というようにA, Bのdeleteを禁止することはできますか。
ただしこの制約はAでつくりたいです。
//...
};
class B : public A {
};
A *a = new B();
delete a; // だめ
B *b = new B();
delete b; // だめ
というようにA, Bのdeleteを禁止することはできますか。
ただしこの制約はAでつくりたいです。
742デフォルトの名無しさん (ワッチョイ 9feb-RYVm)
2017/12/30(土) 09:33:10.52ID:d8FdYsMR0 それくらい自分でよく考えろ
743デフォルトの名無しさん (ワッチョイ 2aa8-eCAL)
2017/12/30(土) 09:45:33.24ID:HUtWMzBs0 バカな考えはやめとけ
充分な知識と経験があるやつがバカな考えと知りつつあえてやるなら勝手だが
具体的なやりかたも分からないレベルのやつが思いつきでやろうとしても
あちこちぐちゃぐちゃになって自滅するだけだ
充分な知識と経験があるやつがバカな考えと知りつつあえてやるなら勝手だが
具体的なやりかたも分からないレベルのやつが思いつきでやろうとしても
あちこちぐちゃぐちゃになって自滅するだけだ
744デフォルトの名無しさん (ワッチョイ cacf-Frgx)
2017/12/30(土) 11:12:47.92ID:cTkeeOUh0 A&& a{B()};
B&& b{B()};
じゃだめなん?
B&& b{B()};
じゃだめなん?
745デフォルトの名無しさん (ワッチョイ 8a98-zz6T)
2017/12/30(土) 12:45:48.79ID:UOR1hNFd0 うーん諦めそう
746デフォルトの名無しさん (ワッチョイ 86e7-RYVm)
2017/12/30(土) 13:12:04.93ID:Rl7wv9fa0 やりたいことを実現するだけならA::~A()をprivateにすればいい
数多の副作用をどうするかは自分で考えろ
数多の副作用をどうするかは自分で考えろ
747デフォルトの名無しさん (ワッチョイ 0b7e-YrVP)
2017/12/30(土) 13:54:05.13ID:wmbP4hdJ0 ベクトルの内積を取りたいのですがC++で実装する場合最も高速な方法はなんでしょうか
748デフォルトの名無しさん (ワッチョイ ca34-SFeq)
2017/12/30(土) 13:54:23.97ID:/LayJX5M0 逆にどういう条件ならdeleteしても良い条件なのか?
コレでは一向にdelete出来ないではないか
コレでは一向にdelete出来ないではないか
749デフォルトの名無しさん (ワッチョイ 0b7e-YrVP)
2017/12/30(土) 14:12:38.35ID:wmbP4hdJ0 事故解決しました
750デフォルトの名無しさん (ワッチョイ 4a12-RYVm)
2017/12/30(土) 14:50:42.66ID:tENdVusY0 罷り間違ってもdeleteできないインスタンスとなると
核開発か深海探査か宇宙船くらいしか思いつかない
核開発か深海探査か宇宙船くらいしか思いつかない
751デフォルトの名無しさん (ワッチョイ de81-owgq)
2017/12/30(土) 14:58:28.45ID:W7MN//Qp0 電源を切っても生き残るインスタンス
752デフォルトの名無しさん (ワッチョイ 4a12-RYVm)
2017/12/30(土) 15:57:20.60ID:tENdVusY0 最近の時事と照らし合わせると人工心肺の回収があったな
電源を切れないデザインの電子機器があるのかもしれない
電源を切れないデザインの電子機器があるのかもしれない
753デフォルトの名無しさん (ワッチョイ 67f2-RYVm)
2017/12/30(土) 16:04:54.13ID:JmZ4oRXS0 スタックにしか置けないとか
754デフォルトの名無しさん (スップ Sd8a-z39N)
2017/12/30(土) 19:53:03.01ID:MGnkdLjPd >>747
詳細は?
詳細は?
755デフォルトの名無しさん (ワッチョイ 8a98-iexB)
2017/12/30(土) 19:54:40.04ID:UOR1hNFd0 逆ですね
つまりヒープにしか置きたくないです。
Aから派生したクラスのメモリサイクルを全てGCで管理します。
つまりヒープにしか置きたくないです。
Aから派生したクラスのメモリサイクルを全てGCで管理します。
756デフォルトの名無しさん (ワッチョイ 67f2-RYVm)
2017/12/30(土) 19:58:30.81ID:JmZ4oRXS0 だとしたらGCからはdeleteできないと困るんでない?
757デフォルトの名無しさん (ワッチョイ 8a98-iexB)
2017/12/30(土) 20:03:16.25ID:UOR1hNFd0 たとえばprivateデストラクタを呼べる状態なら
friendにすればいいかと考えています。
それができなければ単に新しいvirtual del()メンバー関数を新設するつもりです。
領域自体はfree()で解放するのでデストラクタがなくてもクラス自体は削除できます。
friendにすればいいかと考えています。
それができなければ単に新しいvirtual del()メンバー関数を新設するつもりです。
領域自体はfree()で解放するのでデストラクタがなくてもクラス自体は削除できます。
758デフォルトの名無しさん (ワントンキン MM3a-Ieq/)
2017/12/30(土) 20:07:42.93ID:DG4PcIhHM だとしたら普通newをオーバーロードするけどね
759デフォルトの名無しさん (ワッチョイ 8a98-iexB)
2017/12/30(土) 20:10:14.52ID:UOR1hNFd0 newは既にオーバーロードされていて
ヘッダ取り付けmallocするようになっています。
問題はnewしてAのコンストラクタが動きGCの管理化であるにもかかわらず、
deleteされたりそもそもスタック上に造られてしまうことです。
ヘッダ取り付けmallocするようになっています。
問題はnewしてAのコンストラクタが動きGCの管理化であるにもかかわらず、
deleteされたりそもそもスタック上に造られてしまうことです。
760デフォルトの名無しさん (ワッチョイ 8a98-iexB)
2017/12/30(土) 20:14:25.11ID:UOR1hNFd0 いまのところの案は
A のdeleteをオーバーライドして
deleteされても領域は解放されないようにすることです。
しかしこれでもスタック上に配置することはできますが。
連投失礼しました。
A のdeleteをオーバーライドして
deleteされても領域は解放されないようにすることです。
しかしこれでもスタック上に配置することはできますが。
連投失礼しました。
761デフォルトの名無しさん (ワントンキン MM3a-Ieq/)
2017/12/30(土) 20:47:53.74ID:DG4PcIhHM てか、C++使うな
762デフォルトの名無しさん (ワッチョイ 0b9f-RYVm)
2017/12/30(土) 21:30:00.75ID:Xyp0qNcm0 GCしか使わせたくないのなら、普通にGC言語使った方がいいと思うが。
オレオレGC実装とか、全くの無駄だし。
なおVC++/CLIでよければGC専用クラスを明示的に作ることは出来る。
オレオレGC実装とか、全くの無駄だし。
なおVC++/CLIでよければGC専用クラスを明示的に作ることは出来る。
763デフォルトの名無しさん (オイコラミネオ MM56-zz6T)
2017/12/30(土) 21:54:06.25ID:VH3WebWaM おそらくid変わってます
インタプリタ作っているんです
でインタプリタでgcをサポートするためにc++でgcを書いています
ですのでなんとかc++で解決したいわけです
インタプリタ作っているんです
でインタプリタでgcをサポートするためにc++でgcを書いています
ですのでなんとかc++で解決したいわけです
764デフォルトの名無しさん (ワッチョイ 67f2-RYVm)
2017/12/30(土) 22:09:40.34ID:JmZ4oRXS0 それならnew/deleteでGCしようとするのが悪手
765デフォルトの名無しさん (オイコラミネオ MM56-zz6T)
2017/12/30(土) 22:20:41.53ID:VH3WebWaM どうしよう
766片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/30(土) 22:31:11.72ID:jArhle36d インタプリタの空間からは直接deleteにはアクセスできないんだろ?
だったらstd::shared_ptr使いなよ。
だったらstd::shared_ptr使いなよ。
767デフォルトの名無しさん (ワッチョイ 4e23-zz6T)
2017/12/30(土) 22:53:42.57ID:ah4/ane50 >>766
循環参照をインタプリタで考えたくないんです
循環参照をインタプリタで考えたくないんです
768デフォルトの名無しさん (ワッチョイ b3b3-Auke)
2017/12/30(土) 23:08:46.89ID:BVA4/HEC0 某書籍の問題をC++で解いています。
格子状の道路を、同じ辺を通らずに(同じ格子点ではないです)
直進と左折のみで、左下から右上まで行く道は何通りあるか求めよ。
それに対して以下のコードを書きましたが、うまくいきません。
https://ideone.com/0JMvWz
MigiDame::CanGo関数の中での挙動が、こちらが期待しているようにならないのです。
>全部trueが返る。
>また、releaseとdebugで挙動が違う。
どなたかご助言をお願い致します。
格子状の道路を、同じ辺を通らずに(同じ格子点ではないです)
直進と左折のみで、左下から右上まで行く道は何通りあるか求めよ。
それに対して以下のコードを書きましたが、うまくいきません。
https://ideone.com/0JMvWz
MigiDame::CanGo関数の中での挙動が、こちらが期待しているようにならないのです。
>全部trueが返る。
>また、releaseとdebugで挙動が違う。
どなたかご助言をお願い致します。
769片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/30(土) 23:13:41.03ID:jArhle36d >>767
論理的に矛盾している。GCは動的に確保・解放するが、C++のスマートポインターは基本的に静的にする。
それをインタプリタ側でしたくないのであれば、外部GCエンジンをインタプリタに接続するインターフェースが必要。
論理的に矛盾している。GCは動的に確保・解放するが、C++のスマートポインターは基本的に静的にする。
それをインタプリタ側でしたくないのであれば、外部GCエンジンをインタプリタに接続するインターフェースが必要。
770片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/30(土) 23:29:34.53ID:jArhle36d771片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/30(土) 23:30:58.79ID:jArhle36d http://www.nminoru.jp/~nminoru/programming/boehm-gc3.html
こちらを参考に。
こちらを参考に。
772片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/30(土) 23:33:17.06ID:jArhle36d 後はクラス内部のoperator new/deleteを定義する。
773デフォルトの名無しさん (ワッチョイ 0b9f-RYVm)
2017/12/30(土) 23:46:28.29ID:Xyp0qNcm0 >>763
> でインタプリタでgcをサポートするためにc++でgcを書いています
意味不明。
例えば、JavaやC#でインタプリタ書けば全く問題ないだろ。
一般的にはシステムとユーザで別ヒープ空間にしてサンドボックス化したいけど、
GC言語って一般的にGCヒープが壊れるようなアクセス方法を提供してないから、
別空間に分けなくてもそんなに酷いことにはならないぞ。
オレオレインタプリタ程度なら問題ないはず。
> でインタプリタでgcをサポートするためにc++でgcを書いています
意味不明。
例えば、JavaやC#でインタプリタ書けば全く問題ないだろ。
一般的にはシステムとユーザで別ヒープ空間にしてサンドボックス化したいけど、
GC言語って一般的にGCヒープが壊れるようなアクセス方法を提供してないから、
別空間に分けなくてもそんなに酷いことにはならないぞ。
オレオレインタプリタ程度なら問題ないはず。
774デフォルトの名無しさん (ワッチョイ aa2d-ug5Q)
2017/12/31(日) 00:00:04.48ID:6+AUyGx70775片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/31(日) 00:16:40.38ID:iQxViKH1d インタプリタのメモリー管理はインタプリタ側かGCエンジン側でしないといけない。
インタプリタでは自動的にデストラクタは呼ばれないので、インタプリタ側が引き金を引かないといけない。
インタプリタでは自動的にデストラクタは呼ばれないので、インタプリタ側が引き金を引かないといけない。
776片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/31(日) 00:19:34.27ID:iQxViKH1d Boehm GCというGCエンジンをそのまま使えばいいからさ。
777デフォルトの名無しさん (ワッチョイ aa2d-ug5Q)
2017/12/31(日) 00:38:38.33ID:6+AUyGx70 >>768
255行目は「return false;」じゃないの?
255行目は「return false;」じゃないの?
778デフォルトの名無しさん (ワッチョイ b3b3-Auke)
2017/12/31(日) 00:49:49.20ID:sqNDq1tX0 ありがとうございます。
仰る通りでした。
お恥ずかしい。
仰る通りでした。
お恥ずかしい。
779デフォルトの名無しさん (ワッチョイ 4e23-zz6T)
2017/12/31(日) 01:14:19.19ID:pvw4D5QY0 >>774
継承元のコンストラクタを呼べないのでそれはできないです
継承元のコンストラクタを呼べないのでそれはできないです
780デフォルトの名無しさん (ワッチョイ eaf9-hwC7)
2017/12/31(日) 01:33:30.83ID:QH0un2fa0781デフォルトの名無しさん (ワッチョイ 4e23-zz6T)
2017/12/31(日) 01:34:01.16ID:pvw4D5QY0782はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 066f-Auke)
2017/12/31(日) 01:57:19.48ID:ZCoi/xwq0 >>781
C で書かれてても完全に C の仕様の範囲内で書いてるとは限らんのだぞ。
アーキテクチャ依存の部分を適当に #ifdef で分岐して configure でなんとかしたりする (できる) のが C/C++
C で書かれてても完全に C の仕様の範囲内で書いてるとは限らんのだぞ。
アーキテクチャ依存の部分を適当に #ifdef で分岐して configure でなんとかしたりする (できる) のが C/C++
783デフォルトの名無しさん (ワッチョイ 4e23-zz6T)
2017/12/31(日) 02:23:20.14ID:pvw4D5QY0784片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/31(日) 07:16:38.47ID:iQxViKH1d785デフォルトの名無しさん (ワッチョイ cab3-tILW)
2017/12/31(日) 07:28:36.53ID:pVPyHW7p0 もう言ってることもちぐはぐだしレス古事記としか思えない
スルー推奨
スルー推奨
786片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2017/12/31(日) 07:32:05.37ID:iQxViKH1d インタプリタで扱う、GC管理するクラスの基底クラスObjectBaseを定義して、そこでBoehm GCを使ってoperator new/deleteを定義する。
インタプリタ側でObjectBaseの派生クラスを必要に応じてnew/deleteすればGC管理ができる。
インタプリタ側でObjectBaseの派生クラスを必要に応じてnew/deleteすればGC管理ができる。
787デフォルトの名無しさん (オイコラミネオ MM56-zz6T)
2017/12/31(日) 09:17:47.39ID:6pksk/76M まだ自分では難しいですね
一旦中断して勉強し直します
ありがとうございました
一旦中断して勉強し直します
ありがとうございました
788デフォルトの名無しさん (ワッチョイ 0b9f-RYVm)
2017/12/31(日) 10:57:38.40ID:4mPXFkIt0 >>781
そういう意味ではない。
>>787
まあ、根本的に分かってないというのは同意する。
今の君では無理だ。
君は「既存のインタプリタにGC機能を付け加えようとしている」、ここまではいいか?
インタプリタの場合、両端の柱は2つで、
A. evalラッパ
B. フルエミュ
で、結局の所これらの折衷案となる。どのポイントを目指すかは君が決めればいい。
ただし、君はここまですら到達できていない。
君はGCを自前で実装することにこだわっている。
これはGCをフルエミュすることを意味しているが、
この場合、delete等は常に自前パーサを逐一通すことになるので、その段階で弾けばいいだけだ。
君が言っているように「禁止する」必要は全くない。(ここが矛盾している。
GC管理変数をdeleteしようとしているかは、当然分かるし、分からないようではフルエミュできない)
だから俺たちはevalラッパ実装だという前提で話をしている。
こちらの場合は、システム側が持っている機能を使って相乗りになる。
混ざらないようにさえ出来ればとりあえずは動く。
コードを書く以前に、まず、仕様を固めないと駄目だ。君はここが出来ていない。
もっと上位の、エミュレーション戦略を固めないと話にならない。
そういう意味ではない。
>>787
まあ、根本的に分かってないというのは同意する。
今の君では無理だ。
君は「既存のインタプリタにGC機能を付け加えようとしている」、ここまではいいか?
インタプリタの場合、両端の柱は2つで、
A. evalラッパ
B. フルエミュ
で、結局の所これらの折衷案となる。どのポイントを目指すかは君が決めればいい。
ただし、君はここまですら到達できていない。
君はGCを自前で実装することにこだわっている。
これはGCをフルエミュすることを意味しているが、
この場合、delete等は常に自前パーサを逐一通すことになるので、その段階で弾けばいいだけだ。
君が言っているように「禁止する」必要は全くない。(ここが矛盾している。
GC管理変数をdeleteしようとしているかは、当然分かるし、分からないようではフルエミュできない)
だから俺たちはevalラッパ実装だという前提で話をしている。
こちらの場合は、システム側が持っている機能を使って相乗りになる。
混ざらないようにさえ出来ればとりあえずは動く。
コードを書く以前に、まず、仕様を固めないと駄目だ。君はここが出来ていない。
もっと上位の、エミュレーション戦略を固めないと話にならない。
789デフォルトの名無しさん (ワッチョイ 8a98-iexB)
2017/12/31(日) 12:02:46.05ID:NNFoNJyg0 >この場合、delete等は常に自前パーサを逐一通すことになるので、その段階で弾けばいいだけだ
というのはインタプリタからは直接deleteが見えないことをさしていると思いますが(合っていますか?
>君が言っているように「禁止する」必要は全くない。
の理由がわかりません。
インタプリタ上のオブジェクトもC++上ではただのポインタであり
delete hogehoge //このhogehogeはGCの管理下
することは文法上は可能なはずです。
これを禁止することは処理系の保守性/安全性のために必要だと考えています(というのが初めの質問につながります
そしてevalラッパというのはやらないです。
今回はメモリ管理まで実装することでその"Java"や"C#"での管理の仕組みを実装レベルで学ぶことが目的の一つだからです。
動けばいいとうわけではありません。当然出荷するわけでもありませんので大丈夫です。
>コードを書く以前に、まず、仕様を固めないと駄目だ。君はここが出来ていない。
>もっと上位の、エミュレーション戦略を固めないと話にならない。
ええ全くその通りでした。楽観的すぎたか単に実力不足です。
というのはインタプリタからは直接deleteが見えないことをさしていると思いますが(合っていますか?
>君が言っているように「禁止する」必要は全くない。
の理由がわかりません。
インタプリタ上のオブジェクトもC++上ではただのポインタであり
delete hogehoge //このhogehogeはGCの管理下
することは文法上は可能なはずです。
これを禁止することは処理系の保守性/安全性のために必要だと考えています(というのが初めの質問につながります
そしてevalラッパというのはやらないです。
今回はメモリ管理まで実装することでその"Java"や"C#"での管理の仕組みを実装レベルで学ぶことが目的の一つだからです。
動けばいいとうわけではありません。当然出荷するわけでもありませんので大丈夫です。
>コードを書く以前に、まず、仕様を固めないと駄目だ。君はここが出来ていない。
>もっと上位の、エミュレーション戦略を固めないと話にならない。
ええ全くその通りでした。楽観的すぎたか単に実力不足です。
790デフォルトの名無しさん (ワッチョイ 0b9f-RYVm)
2017/12/31(日) 13:30:39.82ID:4mPXFkIt0 >>789
君が想定しているのは明らかにフルエミュ寄りだから、それで話をすると、
A *a = new A(); でまず、
自前の変数管理用ハッシュ内に valuesHash["a"] = {type: A*, value: ptr}; することになるだろ。
そして delete a; が来ると、
if (valuesHash["a"].type.canDelete) delete valuesHash["a"].value;
で対応することになる。だから、
> することは文法上は可能なはずです。
> これを禁止することは処理系の保守性/安全性のために必要だと考えています
ということ自体が間違いなんだよ。
文法的に禁止とか、全く意味が無くて、
実行時に自然に弾けるし、弾けないようなフルエミュは実装不能だから。
君はインタプリタ自体がどう動いているのか理解できていない。
インタプリタの場合は、生きている変数を全て自分で把握してないと話にならないんだよ。
俺たちはこれは「常識」として、その先の ptr の配置先をどうするか、の話をしていた。
だから完全に空回りすることになる。
> 楽観的すぎたか単に実力不足です。
どっちもだ。
君は車を作ろうとしているが、車にエンジンとタイヤが必要なことすら理解できてない。
このレベルの馬鹿だ。自覚してくれ。
君が想定しているのは明らかにフルエミュ寄りだから、それで話をすると、
A *a = new A(); でまず、
自前の変数管理用ハッシュ内に valuesHash["a"] = {type: A*, value: ptr}; することになるだろ。
そして delete a; が来ると、
if (valuesHash["a"].type.canDelete) delete valuesHash["a"].value;
で対応することになる。だから、
> することは文法上は可能なはずです。
> これを禁止することは処理系の保守性/安全性のために必要だと考えています
ということ自体が間違いなんだよ。
文法的に禁止とか、全く意味が無くて、
実行時に自然に弾けるし、弾けないようなフルエミュは実装不能だから。
君はインタプリタ自体がどう動いているのか理解できていない。
インタプリタの場合は、生きている変数を全て自分で把握してないと話にならないんだよ。
俺たちはこれは「常識」として、その先の ptr の配置先をどうするか、の話をしていた。
だから完全に空回りすることになる。
> 楽観的すぎたか単に実力不足です。
どっちもだ。
君は車を作ろうとしているが、車にエンジンとタイヤが必要なことすら理解できてない。
このレベルの馬鹿だ。自覚してくれ。
791デフォルトの名無しさん (ワッチョイ 8a98-zz6T)
2017/12/31(日) 21:01:51.54ID:NNFoNJyg0792デフォルトの名無しさん (ワッチョイ 5f33-wHXY)
2017/12/31(日) 21:05:22.85ID:gdXppZ4Z0 まぁ机上の空論の段階で質問してる感じはするね
まず実装してみて詰まってから質問したほうが絶対早い
まず実装してみて詰まってから質問したほうが絶対早い
793デフォルトの名無しさん (ワッチョイ 4a12-RYVm)
2017/12/31(日) 21:10:48.47ID:Ax7HC8jF0 これのやり方真似るだけじゃねえの
C++にこだわる理由とかあるのか
GitHub - python/cpython: The Python programming language
https://github.com/python/cpython
GitHub - ruby/ruby: The Ruby Programming Language
https://github.com/ruby/ruby
C++にこだわる理由とかあるのか
GitHub - python/cpython: The Python programming language
https://github.com/python/cpython
GitHub - ruby/ruby: The Ruby Programming Language
https://github.com/ruby/ruby
794デフォルトの名無しさん (ワッチョイ 0b9f-RYVm)
2017/12/31(日) 23:28:57.22ID:4mPXFkIt0 C++ということならV8もどうぞ。
V8 JavaScript Engine
https://github.com/v8/v8
つか、知らんかったけどCのインタプリタもあるのな。
https://root.cern.ch/root/Cint2006.html
https://stackoverflow.com/questions/69539/have-you-used-any-of-the-c-interpreters-not-compilers
V8 JavaScript Engine
https://github.com/v8/v8
つか、知らんかったけどCのインタプリタもあるのな。
https://root.cern.ch/root/Cint2006.html
https://stackoverflow.com/questions/69539/have-you-used-any-of-the-c-interpreters-not-compilers
795デフォルトの名無しさん (ワッチョイ 0b7e-H5kR)
2018/01/01(月) 15:09:24.40ID:sTQ8czIK0 特定のプログラムの音(ゲームの音やブラウザの音など)のみを録音する方法ってありますか?
ステレオミキサー経由の録音はできたのですがそれだとPC全体の音が入ってしまいます
ステレオミキサー経由の録音はできたのですがそれだとPC全体の音が入ってしまいます
796デフォルトの名無しさん (ワッチョイ 9feb-RYVm)
2018/01/01(月) 15:29:07.61ID:hH9fKUSZ0 全くもってスレ違い
797デフォルトの名無しさん (アウアウカー Sacb-H5kR)
2018/01/01(月) 16:20:46.04ID:e32zy+Lia C++で実装してるのですが
799デフォルトの名無しさん (アウアウカー Sacb-H5kR)
2018/01/01(月) 19:08:55.81ID:0kKej5SZa >>798
win10でマザボから音出してます
win10でマザボから音出してます
800デフォルトの名無しさん (ワッチョイ 07c3-FiVz)
2018/01/01(月) 22:50:45.26ID:h4sxlXvw0 >>795
ステレオミキサーで必要な音以外をミュートにしておくのではダメなの?
ステレオミキサーで必要な音以外をミュートにしておくのではダメなの?
801デフォルトの名無しさん (アウアウカー Sacb-H5kR)
2018/01/01(月) 23:04:49.88ID:CxGFbaKha802はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 066f-Auke)
2018/01/01(月) 23:29:57.50ID:jbWUirsb0 めんどくさ。
DLL インジェクションでサウンド関連の API 呼出しを横取りして記憶するとかどうよ
DLL インジェクションでサウンド関連の API 呼出しを横取りして記憶するとかどうよ
803デフォルトの名無しさん (ワッチョイ 6b78-EEtN)
2018/01/01(月) 23:48:05.00ID:moCLDBRy0 まずOBSとかAfterburnerなんかの録画アプリで出来るか確かめてみれや
それでできるなら出来るだろうし出来ないなら出来ないってこった
それでできるなら出来るだろうし出来ないなら出来ないってこった
804デフォルトの名無しさん (ワッチョイ eaf9-hwC7)
2018/01/02(火) 00:08:23.37ID:A/ddTu/K0 >>797
録音を実現する機能はc++という言語の範疇ではないから、適切なスレで聞いてきた方がいいよ。
具体的に使うAPIなりライブラリなりが分かってやりたい処理があって、それをc++で記述する上で疑問が出てきたならこのスレでいいと思うけど。
録音を実現する機能はc++という言語の範疇ではないから、適切なスレで聞いてきた方がいいよ。
具体的に使うAPIなりライブラリなりが分かってやりたい処理があって、それをc++で記述する上で疑問が出てきたならこのスレでいいと思うけど。
805デフォルトの名無しさん (ワッチョイ 07c3-FiVz)
2018/01/02(火) 02:09:46.75ID:TOn3QoHK0 >>801
Windows7だと画面右下のタスクバー上のスピーカーアイコンを右クリックして
音量ミキサーを起動すると、ミュートする音を選べるようになるよ
(各音源の一番下の青いスピーカーの部分をクリックすればいい)
Windows7だと画面右下のタスクバー上のスピーカーアイコンを右クリックして
音量ミキサーを起動すると、ミュートする音を選べるようになるよ
(各音源の一番下の青いスピーカーの部分をクリックすればいい)
806デフォルトの名無しさん (ワッチョイ 9e5f-g95I)
2018/01/03(水) 00:50:02.27ID:975SpLfw0 みんなストイックに-Weverythingなの?
807片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdea-hOPe)
2018/01/03(水) 18:02:54.72ID:DhesVTdNd We very thing
808デフォルトの名無しさん (ワッチョイ ff89-OTe3)
2018/01/03(水) 18:06:12.23ID:AMJZwzU90 「GCが欲しければObjectBaseを継承しなければならない
「さあObjectBaseを継承したまえ、GCが欲しいだろう
↑
という押しつけがましさ
「さあObjectBaseを継承したまえ、GCが欲しいだろう
↑
という押しつけがましさ
809デフォルトの名無しさん (ワッチョイ 6b75-kJbS)
2018/01/03(水) 18:08:47.07ID:zucBe8Ms0 ブランケットアンクローズドシンタックスエラー
810デフォルトの名無しさん (ワッチョイ ff89-OTe3)
2018/01/03(水) 19:20:51.86ID:AMJZwzU90 switch(c) {
case '{':
aho();
break;
//...
}
case '{':
aho();
break;
//...
}
https://www.theregister.co.uk/2018/01/02/intel_cpu_design_flaw/
>that Intel's CPUs speculatively execute code potentially without performing security checks.
...
>That would allow ring-3-level user code to read ring-0-level kernel data.
投機的実行が仇になったようだね、リング3 コードがリング0 カーネルデータを読み込める、というのは最悪だねえ‥
>that Intel's CPUs speculatively execute code potentially without performing security checks.
...
>That would allow ring-3-level user code to read ring-0-level kernel data.
投機的実行が仇になったようだね、リング3 コードがリング0 カーネルデータを読み込める、というのは最悪だねえ‥
812デフォルトの名無しさん (ワッチョイ ca34-SFeq)
2018/01/03(水) 23:20:34.97ID:XsO0N2Ro0 intelのCPUに重大なバグ。修正により性能30%ダウンは確実。 もちろんcoffeeも対象 [589351131]
https://leia.5ch.net/test/read.cgi/poverty/1514960738/
>インテルのCEOが関連性は不明だが2017年11月にCEOを最低維持できる25万株残して株式を売却している
ヤバいで
https://leia.5ch.net/test/read.cgi/poverty/1514960738/
>インテルのCEOが関連性は不明だが2017年11月にCEOを最低維持できる25万株残して株式を売却している
ヤバいで
813デフォルトの名無しさん (ワッチョイ 1f60-1EiW)
2018/01/04(木) 00:19:22.89ID:NEvAF4vy0814デフォルトの名無しさん (ワッチョイ 1f60-1EiW)
2018/01/04(木) 00:25:51.35ID:NEvAF4vy0815デフォルトの名無しさん (ワッチョイ 1f60-1EiW)
2018/01/04(木) 00:34:08.27ID:NEvAF4vy0 関連記事がまとまっていた
https://news.google.com/news/story/dxTQx3jGZ4VUkpMLaUSX33-gnbA8M?hl=en-GB&ned=uk&gl=GB
https://news.google.com/news/story/dxTQx3jGZ4VUkpMLaUSX33-gnbA8M?hl=en-GB&ned=uk&gl=GB
816デフォルトの名無しさん (ワッチョイ efe7-Ogju)
2018/01/04(木) 00:45:09.37ID:Z29HpgyU0 えっやばくねこれ
817デフォルトの名無しさん (ワッチョイ 0feb-gOZ5)
2018/01/04(木) 02:42:39.95ID:tRFYlI1W0 なんか>>811にめちゃめちゃ書いてあるらしく実際そんなヤバないらしいよ
818デフォルトの名無しさん (ワッチョイ 3b89-2A+B)
2018/01/04(木) 06:34:15.00ID:O1MbUTjx0 やってみろよ
ム板でそういう発言恥ずかしくないのか
ム板でそういう発言恥ずかしくないのか
819デフォルトの名無しさん (ブーイモ MM0f-tDXD)
2018/01/04(木) 08:34:28.43ID:BdTp33RzM システムコール呼び出すたびにアドレス空間を切り替えるパッチを当てるみたいだから、
io叩きまくるコンパイル作業はモロに影響うけるかもね。
arm64版にもパッチを当てるみたいだけど、禿大丈夫か…
io叩きまくるコンパイル作業はモロに影響うけるかもね。
arm64版にもパッチを当てるみたいだけど、禿大丈夫か…
820デフォルトの名無しさん (アウアウウー Sa8f-hL1C)
2018/01/04(木) 18:57:44.39ID:mQU15vmIa intel抜けてる
intel割れてる
intel割れてる
821デフォルトの名無しさん (アウアウカー Sa4f-672L)
2018/01/05(金) 22:53:49.25ID:eQNcfao2a c++で例外は使ってますか?
また使う場合std::exceptionを継承しますか?
また使う場合std::exceptionを継承しますか?
822デフォルトの名無しさん (ワッチョイ cb78-dycC)
2018/01/05(金) 23:16:55.81ID:Zjbc7FO50 最後の門番がstd::exceptionなんで継承して使う
823デフォルトの名無しさん (ワッチョイ 2bb3-hL1C)
2018/01/05(金) 23:33:54.58ID:o2QD25iD0 ] ][][[[ [][] [[["][ [ ]]]["04"
824デフォルトの名無しさん (ワッチョイ 9f33-aKZ8)
2018/01/06(土) 01:45:54.07ID:oEcDcvUy0 >>821
標準コンテナとか含めて new 使ったら bad_alloc 受けることになるんだから
ほとんどの場合に使ってると言えそうなんだけど「継承しますか?」って話に繋がってるってことは
「使う」=自分で例外クラスを定義して使うって話なのかな?
標準コンテナとか含めて new 使ったら bad_alloc 受けることになるんだから
ほとんどの場合に使ってると言えそうなんだけど「継承しますか?」って話に繋がってるってことは
「使う」=自分で例外クラスを定義して使うって話なのかな?
825デフォルトの名無しさん (ワッチョイ cb75-if4i)
2018/01/06(土) 02:11:45.78ID:dYI3l1P40 英単語の前後にスペースを挿入するのはこだわり?
826はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ef6f-hL1C)
2018/01/06(土) 02:48:37.95ID:mAB25EnJ0 >>825
TeX で英数字からなる語の前後に空白を入れないと単語境界がうまく認識されないという問題があったので、この習慣は広く定着してる。
ただ、 pTeX などでは自動で境界を認識して適切な幅を取るようになっているのでむしろ空白文字を入れるとダメってのもある。
どっちでも上手いこと処理するのもあるし、そのへんごちゃごちゃしてややこしいんだわ。
ウェブブラウザでも物によって幅の取り方が違う。
まあ個人的には、バッドノウハウだという自覚はあるが、 html やプレーンテキストでは英単語の前後には空白を入れた方が見やすいと思う。
TeX で英数字からなる語の前後に空白を入れないと単語境界がうまく認識されないという問題があったので、この習慣は広く定着してる。
ただ、 pTeX などでは自動で境界を認識して適切な幅を取るようになっているのでむしろ空白文字を入れるとダメってのもある。
どっちでも上手いこと処理するのもあるし、そのへんごちゃごちゃしてややこしいんだわ。
ウェブブラウザでも物によって幅の取り方が違う。
まあ個人的には、バッドノウハウだという自覚はあるが、 html やプレーンテキストでは英単語の前後には空白を入れた方が見やすいと思う。
827デフォルトの名無しさん (ワッチョイ cb75-if4i)
2018/01/06(土) 02:53:16.08ID:dYI3l1P40 たしかに
828デフォルトの名無しさん (ワッチョイ 9f33-aKZ8)
2018/01/06(土) 02:59:22.25ID:oEcDcvUy0829デフォルトの名無しさん (アウアウウー Sa8f-672L)
2018/01/06(土) 09:05:07.05ID:QqCP9l1Xa >>824
そうです。c++の本など見ても標準の例外を説明して終わりな事が多いし、しまいにはnoexceptなるキーワードまで出来てるし実際使ってるのかなと。
そうです。c++の本など見ても標準の例外を説明して終わりな事が多いし、しまいにはnoexceptなるキーワードまで出来てるし実際使ってるのかなと。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【おこめ】「有能だったんじゃ」おこめ券で批判殺到の鈴木農水大臣…ネットでは前任の“進次郎再評価” [ぐれ★]
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★3 [Hitzeschleier★]
- 【中国外務省】日本への渡航自粛を再度呼びかけ 今度は「地震発生」を理由に [ぐれ★]
- 日本語が話せない「外国籍」の子が急増中、授業がストップ、教室から脱走も…先生にも大きな負担「日本語支援」追いつかず★3 [七波羅探題★]
- 【今年の漢字】吉村維新代表「成」 万博成功、連立で政策成す [蚤の市★]
- 【MLB】ダルビッシュの息子・ショウエイが大学チームに所属決定 「野球IQを持っている」と監督 183センチ、86キロの恵まれた体形 [冬月記者★]
- ネトウヨ「中国の例の証拠動画、日本側の応答が海自の無線規則とは違うので捏造です」海自の動画でネトウヨの嘘だとバレる [165981677]
- 日本人、世界で最もブランドに興味なし🇯🇵 [462275543]
- 【悲報】ネトウヨ「釧路湿原を守れえぇぇ!!」メガソーラー屋さん「1坪500円でその土地買い取ります☺」 [616817505]
- 【悲報】たぬかなが渡邊渚を壮絶バッシング 「グラビア出したあたりから臭いな~と思ってたが激臭になってたわ。中居は悪くない」 [455031798]
- 【悲報】鈴木農水大臣、国民から「こいつひょっとしてアホなんじゃね?」と思われ始めてしまうwww [793117252]
- お昼のまったり🍵😶‍🌫🤏すこすこハウス🏡
