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


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

C++相談室 part125



1 名前:デフォルトの名無しさん(ワッチョイ 7b5b-xKv1) mailto:sage [2016/05/21(土) 01:21:01.51 ID:HBQ7d37R0.net]
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。

前スレ
C++相談室 part124
echo.2ch.net/test/read.cgi/tech/1459610544/

このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.97【環境依存OK】
peace.2ch.net/test/read.cgi/tech/1439849418/

■長いソースを貼るときはここへ。■
 codepad.org/
 ideone.com/

[C++ FAQ]
https://isocpp.org/wiki/faq/
www.bohyoh.com/CandCPP/FAQ/ (日本語)
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

596 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/07/28(木) 10:44:02.14 ID:IcWRb54zH.net]
>>580
お客様気分で使いたいなら他の選択肢(言語)はいくらでもある

597 名前:デフォルトの名無しさん (ブーイモ MMcd-Y0VN) mailto:sage [2016/07/28(木) 11:52:38.27 ID:X9nAf2gTM.net]
pkg-configでええわ。

598 名前:デフォルトの名無しさん (ワッチョイ 7d7b-LcQh) [2016/07/28(木) 14:16:28.08 ID:SCzjcUXT0.net]
>>581
>>578 と別人だから。

>>583
へぇ、偉そうに言ってるお前はC++にどんな貢献をしたんだい?

599 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/07/28(木) 15:56:30.82 ID:rtov7zp80.net]
C++への貢献?
なんか話の方向がメルセンヌツイスターだな

600 名前:デフォルトの名無しさん (スプッッ Sdb8-Y0VN) mailto:sage [2016/07/28(木) 16:19:29.77 ID:LmLdUHqpd.net]
俺なんかC++勉強会の懇親会に出たことるんだぞ

601 名前:デフォルトの名無しさん (ワッチョイ cddc-1jYK) mailto:sage [2016/07/28(木) 16:25:41.32 ID:PhoEVdvZ0.net]
C++への貢献ねぇ…。
クソ高い参考書を買うとか?

602 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/07/28(木) 17:58:18.31 ID:rtov7zp80.net]
規格票なら買ってる
クソ高い・・・以前に、公文書の交付を受けるのにあの金額はおかしいだろ

603 名前:デフォルトの名無しさん (スプッッ Sdb8-Y0VN) mailto:sage [2016/07/28(木) 18:12:04.60 ID:LmLdUHqpd.net]
貢献はboostやcpprefjpへのプルリクでいいんじゃない?

604 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/07/28(木) 18:21:31.47 ID:rtov7zp80.net]
つーか、単にC++で何か作ること自体がもう貢献だろ
たとえばCがあれだけ栄えたことに貢献した人は何をしたんだっけ



605 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/28(木) 19:27:08.07 ID:PWtGjmpP0.net]
>>589
それって金で買えるのか

606 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/07/28(木) 19:56:00.92 ID:sYdLJS0Ur.net]
規格票って13年くらい前の古文書だろ

607 名前:デフォルトの名無しさん (ワッチョイ 7e23-Y0VN) [2016/07/28(木) 20:12:33.65 ID:CaiDafD30.net]
>>592
日本版(JIS)でよければ、大きめの本屋で普通に売ってる。

608 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/07/28(木) 21:16:50.88 ID:rtov7zp80.net]
ISO/IEC 14882:2014 \25,660_

609 名前:デフォルトの名無しさん (ブーイモ MMcd-Y0VN) mailto:sage [2016/07/28(木) 22:04:58.45 ID:AhBaCZNjM.net]
普通にanciのサイトで買える

610 名前:デフォルトの名無しさん (ワントンキン MM40-LcQh) [2016/07/28(木) 22:07:43.11 ID:cznXvZ6ZM.net]
そのうちC++準化委員会にどれだけ入るんだろうね

611 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) mailto:sage [2016/07/28(木) 22:07:46.67 ID:QNrOVLfKM.net]
ANSIの企画書がanciのサイトで買えるのか
嫌ぁ勉強になりますわ

612 名前:デフォルトの名無しさん (ワッチョイ 7117-Y0VN) mailto:sage [2016/07/28(木) 22:53:09.75 ID:7B/8SZ+20.net]
C++はコードを美しく書ける、という認識は間違っていますか?

613 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/07/28(木) 22:57:08.86 ID:ZGIpVfgca.net]
眼鏡をかけような

614 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/07/29(金) 02:36:32.13 ID:GYJuIIBJr.net]
普通は198CHFの奴を買うもんだが
情弱は違うらしいな



615 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/29(金) 02:43:05.82 ID:uOIYb5lR0.net]
全文日本語訳されたら買うよ

616 名前:デフォルトの名無しさん (ドコグロ MMc1-Y0VN) mailto:sage [2016/07/29(金) 08:10:14.45 ID:JEwvfhb1M.net]
>>599
その認識は合ってるよ
ただいくらでも見辛く書ける
という意味では perl と双璧をなすけどね

617 名前:デフォルトの名無しさん (スプッッ Sdc8-Y0VN) [2016/07/29(金) 08:22:02.75 ID:e8sS4au9d.net]
範囲forを使って逆順にループする方法教えてください

618 名前:デフォルトの名無しさん (スップ Sdc8-Y0VN) mailto:sage [2016/07/29(金) 08:43:52.36 ID:1qWt9dzPd.net]
じゃあ俺は範囲forを使って
a[i] = b[i] + c[i];
する方法を聞きたい。(聞きたくない)

619 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/29(金) 08:46:44.14 ID:uOIYb5lR0.net]
>>605
なんかそんな感じの提案あったな

620 名前:デフォルトの名無しさん (ワンミングク MM40-Y0VN) mailto:sage [2016/07/29(金) 09:40:41.98 ID:pdbkszbOM.net]
>>605
boostのrange_adaptor

621 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/07/29(金) 10:27:51.01 ID:AEGdLZ8J0.net]
>>605
int main()
{
int a[5];
int b[5] { 1, 1, 1, 1, 1 };
int c[5] { 2, 2, 2, 2, 2 };

for(auto& d : a)
{
d = b[&d - a] + c[&d - a];
}

for(auto d : a) std::cout << d;
}

622 名前:デフォルトの名無しさん (スップ Sdc8-Y0VN) mailto:sage [2016/07/29(金) 11:57:30.49 ID:1qWt9dzPd.net]
>>608
「嫌だ嫌だ...」
そう言ってプログラマは泣いた

623 名前:デフォルトの名無しさん (ドコグロ MM74-Y0VN) mailto:sage [2016/07/29(金) 16:25:08.75 ID:MbSsjn6pM.net]
>>598
まあ、企画書だからな。

624 名前:デフォルトの名無しさん (ワンミングク MM40-Y0VN) mailto:sage [2016/07/29(金) 16:29:20.58 ID:74ZVxiA5M.net]
ま、イタリア語は読めないから買わないけど



625 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/07/29(金) 21:11:18.10 ID:AEGdLZ8J0.net]
スイスフラン?

626 名前:デフォルトの名無しさん (ワッチョイ d5a8-oK17) mailto:sage [2016/07/29(金) 21:11:25.00 ID:ZRGEK2hc0.net]
日本にいたり、イタリヤにいたりや。

627 名前:デフォルトの名無しさん (ブーイモ MMcd-Y0VN) mailto:sage [2016/07/29(金) 21:21:35.12 ID:vYaVH+7PM.net]
www.anci.it
何故、アメリカの規格書をここで買うの?

628 名前:デフォルトの名無しさん (ワッチョイ d6c0-yFKW) mailto:sage [2016/07/29(金) 21:49:50.42 ID:BANj6sOx0.net]
”それ”を買いたいんだろう

629 名前:デフォルトの名無しさん (ワッチョイ 795b-Dh9/) mailto:sage [2016/07/29(金) 23:28:19.95 ID:uSAA9Kyx0.net]
久しぶりに覗いてみたら
相変わらずC++だな()

630 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/07/30(土) 16:51:59.64 ID:fjcsuflwr.net]
どうして598はISOの話をしていたのに突然ANSIだと思ったんだろう

631 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/07/30(土) 18:10:47.31 ID:SD9Rxi9F0.net]
>>617
>>596

632 名前:デフォルトの名無しさん (ワッチョイ e27b-1ZjC) mailto:sage [2016/07/30(土) 19:33:55.62 ID:RbMYjVy20.net]
ISOを国内むけに規格化してる。JISみたいなもん。
C89(99?)はANSIから買った方がだいぶ安かった。

633 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/07/30(土) 19:42:44.69 ID:N4OwuBUbr.net]
いや596はANSIが売ってるANSI版じゃなくて
ANSIが売ってるISO版の方の話だろ

634 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/07/30(土) 20:24:51.90 ID:B4kFV2/La.net]
いつまで規格の話にはまってんだ
そんなもん江添にでも喰わせておけ



635 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/30(土) 20:29:28.87 ID:Ye/zcysO0.net]
C++erは規格を食べて生きている

636 名前:デフォルトの名無しさん (ワッチョイ df7b-fBdW) mailto:sage [2016/07/30(土) 20:32:20.84 ID:9HEOOrL70.net]
んなことない
規格厨はやたら声が大きすぎるだけ
リアルなC++erはそんなのは滅多にいない

637 名前:デフォルトの名無しさん (スプッッ Sdc8-Y0VN) mailto:sage [2016/07/30(土) 20:47:43.67 ID:/3qyH9iId.net]
江添っておばさんぽいよな

638 名前:デフォルトの名無しさん (ワッチョイ d5a8-oK17) mailto:sage [2016/07/30(土) 21:23:02.21 ID:tq/lk9dG0.net]
>>623
そうは言ってもなぁ、モダンなコンパイラはかなり豪快な最適化をすることがある。
仕様からちょっとでも外れた部分は予想のつかない結果を生むので、
結果的に仕様にはそれなりに詳しくないととてもじゃないがやってられん。
最適化を抑制するのも馬鹿馬鹿しい話だしな。

639 名前:デフォルトの名無しさん (ワッチョイ 8063-Y0VN) mailto:sage [2016/07/30(土) 21:38:31.60 ID:V1YioEmu0.net]
つまり「言語仕様は熟知していないけど
最適化オフなら意図した動作にできる自信が有る」

そこはかとなく危険なアロマしか漂わない

640 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/30(土) 21:50:00.90 ID:Ye/zcysO0.net]
最近はC++に詳しくなることが目的になっているけど何の問題もない

641 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/07/30(土) 22:42:52.77 ID:SD9Rxi9F0.net]
>>626
どういう教育受けたらそんなアホな解釈を世間に公開できるんだ?

642 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/30(土) 22:59:04.11 ID:r8DYCtFQa.net]
会社にやたらと規格には詳しいが、全く装置動かせない奴いるわ

643 名前:デフォルトの名無しさん (ワッチョイ decc-Y0VN) mailto:sage [2016/07/31(日) 01:37:23.60 ID:K1pziM800.net]
覚えるだけの実践で使えないでくの坊な

644 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/31(日) 01:55:53.06 ID:k2XUZocb0.net]
入門書以上の知識が必要な業務ってどれだけあるんだよ



645 名前:デフォルトの名無しさん (ワッチョイ 7e23-Y0VN) [2016/07/31(日) 02:03:51.88 ID:BwQhep530.net]
むしろ入門書だけでなんとかなる業務がどれだけあるのか聞きたいわ

646 名前:デフォルトの名無しさん (ワッチョイ de02-oK17) mailto:sage [2016/07/31(日) 02:24:27.97 ID:k2XUZocb0.net]
うちの会社では工場の設備の補助的なPCのアプリケーションばかり作らされていてどベターCみたいなのばっかりだわ制御ではない
一通りの構文知っていれば書ける
C++の標準ライブラリは使用禁止
MFCを使わされる
理由は上司が分からないから

647 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/07/31(日) 04:59:09.06 ID:gsBYroyJa.net]
上司どかせろ

648 名前:デフォルトの名無しさん (ワントンキン MM40-LcQh) [2016/07/31(日) 05:49:24.35 ID:m5m3ueEtM.net]
クラスメンバーへのポインタでデータメンバーかメンバー関数かでオーバーロードするいい方法ある?
メンバー関数はシグネチャー決まってなくて
C++03でも通る方法で

649 名前:デフォルトの名無しさん (ワッチョイ b2a6-oK17) mailto:sage [2016/07/31(日) 07:01:09.97 ID:mjx8Q1wz0.net]
>>635
メンバポインタ以外に、クラスインスタンスも引数にもらえると考えていいの?

650 名前:デフォルトの名無しさん (ワントンキン MM40-LcQh) [2016/07/31(日) 07:10:35.74 ID:m5m3ueEtM.net]
>>636
貰えないと考えて

651 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/07/31(日) 07: ]
[ここ壊れてます]

652 名前:33:12.04 ID:1r+GKlUkr.net mailto: 入り口をテンプレートにしたら
普通にオーバーロードできたが
何を困っているんだ?
[]
[ここ壊れてます]

653 名前:デフォルトの名無しさん (ワントンキン MM40-LcQh) [2016/07/31(日) 07:43:11.76 ID:m5m3ueEtM.net]
>>638
質問そんなに解りづらかったかな?
メンバー関数かデータメンバーかで分けたいって言ってるんだけど

654 名前:デフォルトの名無しさん (ワントンキン MM40-LcQh) [2016/07/31(日) 08:11:05.35 ID:m5m3ueEtM.net]
ideone.com/O18mHy
例えばこんな感じに書くことが考えられるけど、cv修飾とかreference修飾とかが着くとダメだよね
それぞれ一つ一つ書くのもめんどくさいしそんなにいっぱい書きたくない、もっといい方法無いかなってのが質問の趣旨



655 名前:デフォルトの名無しさん (ワッチョイ 3f3c-oK17) mailto:sage [2016/07/31(日) 10:22:46.19 ID:O2K+oF4W0.net]
lstrcat()がエラー吐いています。
どう改善すればよいでしょうか?
visual studioです。

---エラーメッセージ---
0x00007FFD8B966BC5 (kernel32.dll) で例外がスローされました (hoge.exe 内): 0xC0000005: 場所 0x00007FF76596AE2D への書き込み中にアクセス違反が発生しました
--------------------

bool hoge(char* url) {

LPTSTR lpurl = url;
LPTSTR opt = "-x --audio-format mp3";
lstrcat(opt, lpurl);
ShExFlag = ShellExecute(NULL, "open", "youtube-dl.exe", opt, NULL, SW_SHOW);
//shellexecuteのエラー判定を挿入
return 0;
}

656 名前:デフォルトの名無しさん (ワッチョイ decc-Y0VN) mailto:sage [2016/07/31(日) 10:31:13.44 ID:K1pziM800.net]
夏休みだなw

657 名前:デフォルトの名無しさん (ワッチョイ 3f3c-oK17) mailto:sage [2016/07/31(日) 10:38:43.13 ID:O2K+oF4W0.net]
ideoneに貼った方がよかった?

658 名前:デフォルトの名無しさん (ワッチョイ 3f3c-oK17) mailto:sage [2016/07/31(日) 10:40:11.46 ID:O2K+oF4W0.net]
>>641
書くところ間違えました。すいません。

659 名前:デフォルトの名無しさん (ワッチョイ decc-Y0VN) mailto:sage [2016/07/31(日) 10:42:05.30 ID:K1pziM800.net]
>>641
LPTSTR opt の部分を TCHAR opt[MAX_PATH] になおすと動くだろ
あとは初心者スレできくといい

660 名前:デフォルトの名無しさん (ワッチョイ 3f3c-oK17) mailto:sage [2016/07/31(日) 10:53:02.43 ID:O2K+oF4W0.net]
>>645
動きました!ありがとうございます!
初心者スレ探してきます!

661 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 11:33:20.94 ID:kJ3Jsux+a.net]
>>633
MFC?
とっくに枯れてるライブラリだろ

662 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/07/31(日) 12:11:22.29 ID:mZA98VWrH.net]
>>633 の代わりに上司を説得してくれるそうです

663 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 12:17:23.36 ID:kJ3Jsux+a.net]
テンプレートを使ってるライブラリの使用はOKだが、テンプレートを使って関数なり、クラスを書くのは内も禁止してる。
素人が書いたテンプレートなんて使い物にならんからな

664 名前:デフォルトの名無しさん (ワッチョイ 7d7b-LcQh) [2016/07/31(日) 12:25:43.00 ID:75nzMpMc0.net]
>>649
素人しか居ないのか



665 名前:デフォルトの名無しさん (ワントンキン MM40-Y0VN) mailto:sage [2016/07/31(日) 12:28:15.56 ID:alwpU5odM.net]
ublasのオレオレ拡張とか書かない?

666 名前:デフォルトの名無しさん (ワッチョイ 7551-xLev) mailto:sage [2016/07/31(日) 12:33:32.64 ID:0ENkURmo0.net]
そりゃ、枯れてるライブラリを使う方がいいだろ。

667 名前:デフォルトの名無しさん (ワッチョイ 7d02-oK17) mailto:sage [2016/07/31(日) 12:42:20.48 ID:Ik3c6uxO0.net]
永久に進歩は無いけどな

668 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/07/31(日) 12:53:48.72 ID:mZA98VWrH.net]
今後入替えが困難という前提で
ルーキーとベテランどちらを選ぶかって話よ

669 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 13:05:25.27 ID:kJ3Jsux+a.net]
>>650
テンプレートを書ける奴なんて、日本人てはほとんどいないだろ

670 名前:デフォルトの名無しさん (ワッチョイ 7a6c-6yRu) mailto:sage [2016/07/31(日) 13:06:50.98 ID:VgeNLb5A0.net]
書くだけならいくらでもおるやろ

671 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 13:10:47.75 ID:kJ3Jsux+a.net]
>>656
嘘つけ、世界的に見ても数十人程度だろ

672 名前:デフォルトの名無しさん (ワッチョイ 7a6c-6yRu) mailto:sage [2016/07/31(日) 13:15:42.90 ID:VgeNLb5A0.net]
そうだったな、すまん

673 名前:デフォルトの名無しさん (ワッチョイ 7d02-oK17) mailto:sage [2016/07/31(日) 13:18:11.60 ID:Ik3c6uxO0.net]
書けるっていうのは標準ライブラリやboostレベルの話か
そもそもテンプレートでガリガリ書いていく場面なんて汎用的なライブラリくらいしかないし
しかもそれらを仕事として書く事なんてまずない
書く機会があるのが数十人程度なんだろう

674 名前:デフォルトの名無しさん (ワッチョイ df7b-fBdW) mailto:sage [2016/07/31(日) 13:19:23.82 ID:Qkh5fkK70.net]
>>657
馬鹿言ってんじゃねーよボケ



675 名前:デフォルトの名無しさん (ワッチョイ 7fc9-Y0VN) mailto:sage [2016/07/31(日) 13:51:51.17 ID:tLh0Iyun0.net]
C++のテンプレートはコンパイルエラーの原因が分かりにくく、
デバッグもしにくい。十分に検証されたライブラリならいいけど、
そうでないと逆に生産性を低下させるという主張も妥当性はある。

676 名前:デフォルトの名無しさん (スプッッ Sdc8-Y0VN) mailto:sage [2016/07/31(日) 13:57:56.22 ID:8ZXaDYcWd.net]
馬鹿馬鹿しい話だ
別にテンプレートに限ったことじゃないが

677 名前:デフォルトの名無しさん (ブーイモ MMcd-Y0VN) mailto:sage [2016/07/31(日) 14:08:07.54 ID:0belju2qM.net]
VC++のSTLのBUGはいい加減直して欲しいものだが

678 名前:デフォルトの名無しさん (スッップ Sdb8-Y0VN) mailto:sage [2016/07/31(日) 14:16:25.51 ID:iNXfEuF/d.net]
g++のstlバグも直して欲しいんですがそれは

679 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/07/31(日) 14:27:33.43 ID:1r+GKlUkr.net]
>>640
is_member_object_pointer
is_member_function_pointer
でenable_ifしたら?

680 名前:デフォルトの名無しさん (ワッチョイ decc-Y0VN) mailto:sage [2016/07/31(日) 14:34:12.34 ID:K1pziM800.net]
>>661
エラー発生元を辿ってきちんと表示しない糞コンパイラだとそうなる罠

681 名前:デフォルトの名無しさん (ワッチョイ decc-Y0VN) mailto:sage [2016/07/31(日) 14:38:03.05 ID:K1pziM800.net]
昔のはテンプレートヘッダの部分をエラー表示してソースのどの部分でエラー怒っているか放置するの多かったから結構苦労したな

682 名前:デフォルトの名無しさん (ワッチョイ df7b-fBdW) mailto:sage [2016/07/31(日) 14:41:23.07 ID:Qkh5fkK70.net]
>>661
テンプレートも使えない無能はこうやって自尊心を保とうとするんですね
よく分かりました

683 名前:デフォルトの名無しさん (ワッチョイ 7fc9-Y0VN) mailto:sage [2016/07/31(日) 15:26:40.59 ID:tLh0Iyun0.net]
C++のテンプレートはコンパイル時マクロみたいなもんだからな。

684 名前:デフォルトの名無しさん (ワッチョイ 719a-oK17) mailto:sage [2016/07/31(日) 15:36:49.88 ID:CXKWxktG0.net]
C++アンサイクロペディア思い出したw
ja.uncyclopedia.info/wiki/C%2B%2B

テンプレート

クソ山の王。あるいはクソを聳え立たせる物の意。(出典:Modern C++ Design)
禁書によりその存在が広く認知されるに至り、これはC++の教義における最も特徴的な物であると言われるまでに至った。
その実は、マクロに多少の毛が生えたようなものであり、寝マクロと大差無いというのが近代的な解釈である。
これを使いこなすためには無限の忍耐と高度に鍛えられた指先、また、連続数十時間にも及ぶ苦行に耐えうる強靭な肉体を要する。



685 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) [2016/07/31(日) 15:49:22.43 ID:SaVLGxW1M.net]
標準ライブラリは使用禁止!
理由は、バグがあったときに原因究明が難しい上に、修正できないから!

って指示の職場があってひいたことがあったわー
(心の中で)こうつぶやいたのは言うまでもない

「標準ライブラリのバグ踏む確率より、お前らの作る代替機能がバグる確率の方が高いだろ」

686 名前:デフォルトの名無しさん (ワッチョイ 9c42-oK17) mailto:sage [2016/07/31(日) 15:58:54.36 ID:79rySoAY0.net]
コンパイラにGCCを使って開発していたとき、
ライセンスの関係で標準ライブラリ使用禁止と言うのはあったな
代わりに自社製の同等ライブラリーが提供されていた
必要ならソースも参照できたし
不具合が合った時は迅速に修正してくれたよ

687 名前:デフォルトの名無しさん (ワッチョイ 7d02-oK17) mailto:sage [2016/07/31(日) 16:34:41.62 ID:Ik3c6uxO0.net]
コンパイラのバグを踏んだとき気付きようがないから禁止します

688 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/07/31(日) 16:59:33.20 ID:kNYZMHst0.net]
>>673
GCC で -O2 は使っちゃダメとかあったような

689 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/07/31(日) 17:13:56.59 ID:mZA98VWrH.net]
普通は -O2 がデフォやろ

690 名前:デフォルトの名無しさん (ワッチョイ 7d02-oK17) mailto:sage [2016/07/31(日) 17:13:57.14 ID:Ik3c6uxO0.net]
>>674
それは非同期処理で痛い目見た人が間違った学習をした場合そうなる

691 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 17:20:53.32 ID:kJ3Jsux+a.net]
普通は最適化なんて自前でやるだろ。最大公約数的な最適化なんて使い物になるとは思えん

692 名前:デフォルトの名無しさん (スプッッ Sdc8-Y0VN) mailto:sage [2016/07/31(日) 17:23:55.90 ID:8ZXaDYcWd.net]
>>677
ものによる。普通かどうかはどうでもよさそう。

693 名前:デフォルトの名無しさん (ワッチョイ 7a6c-6yRu) mailto:sage [2016/07/31(日) 17:27:03.52 ID:VgeNLb5A0.net]
コードの最適化とコンパイラの最適化ってレイヤーが違うと思うんですけど(名推理)

694 名前:デフォルトの名無しさん (ワッチョイ 7d02-oK17) mailto:sage [2016/07/31(日) 17:28:00.76 ID:Ik3c6uxO0.net]
>>679
全てアセンブラで書くんだろ



695 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 17:30:36.75 ID:kJ3Jsux+a.net]
>>680
IAA32をバイナリエディタでガリガリ書くだけ

696 名前:デフォルトの名無しさん (ワッチョイ 7e23-Y0VN) [2016/07/31(日) 17:36:08.96 ID:BwQhep530.net]
>>676
激しく同意。

697 名前:デフォルトの名無しさん (ワッチョイ 7f6f-n/e8) mailto:sage [2016/07/31(日) 17:51:18.90 ID:Cp9ofSd90.net]
Androidもglibc使ってないんだよね

俺の関わったCの案件だと、標準ライブラリに依存しすぎないようになってることが多かった
標準ライブラリ使うとしても直接じゃなくてラッパー関数を1枚噛ませるとかしてる
C++だとその辺わりと無頓着だよね

698 名前:デフォルトの名無しさん (ワッチョイ 7e23-Y0VN) [2016/07/31(日) 18:00:04.21 ID:BwQhep530.net]
>>683
必要であればラップするけど…
「できるだけ依存しない」の目的がわからないなぁ。
興味本位で聞きたいんだけど、理由があるのなら教えてもらえないだろうか?

俺の感覚だと、全く同じ機能を使うだけなら、できるだけ標準に依存するようにして欲しい。

699 名前:デフォルトの名無しさん (ワッチョイ 7f6f-n/e8) mailto:sage [2016/07/31(日) 18:08:48.02 ID:Cp9ofSd90.net]
>>684
たとえばカーネルモードとか標準ライブラリが整備されてない環境で動かすことを想定してる

700 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) mailto:sage [2016/07/31(日) 18:17:32.29 ID:aQ94HVbVM.net]
>>683
cの標準ライブラリをラップするメリットってあるの?

701 名前:デフォルトの名無しさん (ワッチョイ 7e23-Y0VN) [2016/07/31(日) 18:19:08.34 ID:BwQhep530.net]
>>685
しそたら、その時に自分で用意すれば良いだけじゃね?

702 名前:デフォルトの名無しさん (ガラプー KKcd-LNIv) mailto:sage [2016/07/31(日) 18:25:42.42 ID:YpFt8gEAK.net]
しそたらこふりかけ

703 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/07/31(日) 18:29:21.69 ID:uNPc5yZza.net]
>>649-650
この流れ好こ

704 名前:デフォルトの名無しさん (ワッチョイ 7f6f-n/e8) mailto:sage [2016/07/31(日) 18:29:52.99 ID:Cp9ofSd90.net]
>>687
環境に応じて用意するんだけどフル機能サポートはしないからね
標準関数そのまま使ってるとそこでフル機能使えるんだと勘違いする奴が出て来たりして
ちょっと面倒なことになる



705 名前:デフォルトの名無しさん (ワッチョイ 3e9f-EaMp) mailto:sage [2016/07/31(日) 18:44:35.61 ID:Ep1NxVxz0.net]
>>683
AndroidはglibcではなくBionic libcを使ってるだけだから
標準ライブラリに依存しないということとはほぼ関係ない

706 名前:デフォルトの名無しさん (ワッチョイ bae4-oK17) mailto:sage [2016/07/31(日) 18:44:49.46 ID:Iib2qVEP0.net]
テンプレートとかvectorとかいるの?
Delphiにはないんだけど、なんか利点あるんですか?
(そもそもそれが何かあまりわかっていない)

707 名前:デフォルトの名無しさん (ワッチョイ 7e23-Y0VN) [2016/07/31(日) 18:46:51.70 ID:BwQhep530.net]
>>690
なるほどね。
それなら妥当かもね。
全く同じものを提供しているなら、それは意味ないと思ったんだけど、そもそも違う機能なら、別関数として然るべきだね。

708 名前:デフォルトの名無しさん (ワイマゲー MM45-oK17) [2016/07/31(日) 19:24:05.65 ID:JTJLwIyaM.net]
【閲覧注意】戦闘に巻き込まれて頭部を切断された少女の遺体。これがリアルなシリア。
dqnworld.com/archives/34.html
これが本当の戦争の恐怖。この少女には大人の戦争は関係ないですからね。巻き込まれた少女の遺体を持って何か
を訴えかけている男たちの映像です。

【閲覧注意】シリアで反体制派の兵士が顔を吹き飛ばされてしまう瞬間。
dqnworld.com/archives/89.html
スローモーションが怖すぎる・・・。

【閲覧注意】アッラーフアクバルを叫びながら少年を斬首する映像を公開する。
dqnworld.com/archives/3975.html
点滴?のようなものが見えるんだけど。助けられた少年じゃなかったのか。助けられた所を強奪されてアッラーフ
アクバル?なのかしら・・・。

【閲覧注意】磔にされた戦闘機パイロットの遺体。シリアにて。
dqnworld.com/archives/3996.html
今日のアッラーフアクバル動画。

【閲覧注意】この首吊り自殺、足スレスレだけど本当に死ねてる?
dqnworld.com/archives/4001.html
中国で撮影された首吊り自殺の映像です。既に死んでいると書いてあるけど自分で揺らしているようにみない?www

妻の目の前でぶっ飛ばされた旦那さん?これは死んだかな(°_°)
dqnworld.com/archives/4004.html
さすがにこれだけ飛ばされたら助からないかな・・・。

【閲覧注意】あおむけでゲロを吐きまくっている男性。助けてやれよ・・・。窒息するぞ(@_@;)
dqnworld.com/archives/4007.html
これ結構危ないんじゃないの?撮影してないで横向きにしてやれよ。これ窒息する可能性あるだろ。

709 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/07/31(日) 21:42:47.04 ID:kNYZMHst0.net]
>>676
GCC がバグフリーだと盲信してる人なの?

710 名前:デフォルトの名無しさん (スップ Sdb8-Y0VN) [2016/07/31(日) 22:10:12.03 ID:CMFfCBWUd.net]
struct hoge
{
using type = int;
};
struct moge : public hoge
{
using hoge::type;
enum : type{};
};
エラー C3064 'type': 単純型でなければならない、または単純型に解決しなければなりません

VC2015だとなぜエラーになるのですか
GCCではなりません

711 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/07/31(日) 23:05:54.79 ID:UZ5XiVpsa.net]
ほならgccつこーたら、ええんちゃうんかい?

712 名前:デフォルトの名無しさん (ワッチョイ cec2-IkXK) mailto:sage [2016/07/31(日) 23:17:03.71 ID:I8Tjpnqi0.net]
>>696
コンパイラのオプション

713 名前:デフォルトの名無しさん (ワッチョイ df7b-fBdW) mailto:sage [2016/08/01(月) 07:33:06.33 ID:U+4K15gc0.net]
>>696
VS2015 Update3で試したら普通に通るけど?オプションはデフォルトで

714 名前:デフォルトの名無しさん (ワッチョイ df7b-fBdW) mailto:sage [2016/08/01(月) 07:43:24.34 ID:U+4K15gc0.net]
VS2013でも通る
VS2012じゃ通らないがエラーが>>696のとは違う



715 名前:デフォルトの名無しさん (ワッチョイ decc-Y0VN) mailto:sage [2016/08/01(月) 13:47:54.88 ID:GmgQHqak0.net]
>>692
世の中には知らない方が幸せなこともあります
無理して知ろうとすると発狂してしまうかもですよ

716 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) mailto:sage [2016/08/01(月) 15:08:14.78 ID:6sVoWLaMM.net]
コアにやるならC
カジュアルにやるならC#あたり
わざわざC++選ぶ理由なくね?

717 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/01(月) 15:16:30.22 ID:BA4CXaZK0.net]
いや必要が生じてない人に同意を求められても・・・

718 名前:デフォルトの名無しさん (スプッッ Sdc8-Y0VN) mailto:sage [2016/08/01(月) 16:13:35.83 ID:xe1Us1FPd.net]
コアとかカジュアルとかゆるふわな判断基準で問われても答えられんわな

719 名前:デフォルトの名無しさん (アウアウ Sa01-Y0VN) mailto:sage [2016/08/01(月) 16:19:47.30 ID:0N9DG3Lpa.net]
コアとカジュアルってなんだよ
むしろ組み込みとかでない限りわざわざC選ぶ理由がないんだが

720 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/01(月) 16:28:46.84 ID:BA4CXaZK0.net]
だから、おまえが選ぶ理由がないだけだろ
バイナリ使うだけでソースは見もしないの丸出しだな

721 名前:デフォルトの名無しさん (スップ Sdc8-Y0VN) mailto:sage [2016/08/01(月) 17:20:40.72 ID:ED+THM+Cd.net]
C++もC#も両方使うんだが?

722 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/01(月) 17:59:02.40 ID:BA4CXaZK0.net]
答えになってねえぞ
ソースを見ずに使えるバイナリのソースのことを言っているんだ

723 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) mailto:sage [2016/08/01(月) 18:02:42.53 ID:6sVoWLaMM.net]
ソースのソースのソース?
何言ってんの?
これだからc++は・・

724 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/08/01(月) 18:48:33.52 ID:OBAVNtD4r.net]
>>709



725 名前:日本語能力の低さには脱帽だが
>>708が突然バイナリのソースについて言及し始めた理由が不明
[]
[ここ壊れてます]

726 名前:デフォルトの名無しさん (スプッッ Sdc8-Y0VN) mailto:sage [2016/08/01(月) 18:52:53.09 ID:xe1Us1FPd.net]
>>702
普通に考えるとわざわざCを選ぶ理由が不明、となるはずだが?

727 名前:デフォルトの名無しさん (ドコグロ MM74-Y0VN) mailto:sage [2016/08/01(月) 19:28:11.53 ID:+SXwg/r8M.net]
そもそもコアにやるならアセンブラ
だろ

728 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) mailto:sage [2016/08/01(月) 20:02:08.33 ID:Pl/m9xU5M.net]
今ならCUDAかもなぁ

729 名前:デフォルトの名無しさん (ワッチョイ 757b-Gs9L) mailto:sage [2016/08/01(月) 20:34:35.11 ID:X7d6me2M0.net]
馬鹿な機能を得意げに使う馬鹿を寄せ付けないために c を使うという方はいますが。

730 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/01(月) 20:49:22.69 ID:BA4CXaZK0.net]
>>709
ニホンゴワカリマセンで逃げるんなら深追いはしねえよw

731 名前:デフォルトの名無しさん (ブーイモ MMb8-Y0VN) mailto:sage [2016/08/01(月) 20:56:34.02 ID:c5CCxcjkM.net]
で、何だって?
ソースのソースのソースのソースですかあ?
すごいでちゅねwww

732 名前:デフォルトの名無しさん (ワントンキン MM40-LcQh) [2016/08/01(月) 21:15:05.92 ID:JluuYzqfM.net]
まずgccとかclangのCコンパイラ作ってる人に言ってきたらいいんじゃないかな?
CとC++やめてCとC#にしようぜって
相手にされないだろうけど

733 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/08/01(月) 21:23:55.75 ID:/D4DgFQEa.net]
CPUの進化が停まっている今、プログラミングに速度が求められるようになる
C/C++は大正義として復権を果たすのである
しかし同時に今、Rustが脅威となりつつ成長を進めている

734 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/08/01(月) 21:28:07.01 ID:MTM1tXJLr.net]
また変な奴が湧いたな



735 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/08/01(月) 22:29:53.73 ID:G87zOVs30.net]
>>715
バイナリのソース
とか言う奴に言われても苦笑するしかないが w

736 名前:デフォルトの名無しさん (ワッチョイ 715b-Y0VN) [2016/08/01(月) 23:21:22.18 ID:C8sozVqi0.net]
何だ?このカオスなやり取りは…?

737 名前:デフォルトの名無しさん (ワッチョイ 757b-oK17) mailto:sage [2016/08/01(月) 23:23:53.09 ID:hgm6N8zV0.net]
>>675
2.9.いくつかで-O2したら浮動小数点演算がバグりまくるってのがあった

738 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/08/02(火) 08:02:27.95 ID:1+WRG/xHH.net]
それは普通じゃないな

739 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/02(火) 10:31:24.15 ID:1Qrut2t0a.net]
C++を使えるようなりたいんですが、どんな感じで習得していくのが良いですか?

740 名前:デフォルトの名無しさん (ワッチョイ 9c41-UbOe) mailto:sage [2016/08/02(火) 10:42:35.25 ID:V+yjlCg80.net]
とにかく、下手でもいいから一つアプリケーションを自分の使う範囲では実用的なところまで作ることだな
こまかな言語仕様をつついてると一向にしょぼいアプリケーションすらできないぞ
int i = 0;
int i(0);
は意味が違うなんて細かなこと言ってるやついるけど、そんなところで時間使うなんてもったいなすぎる

741 名前:デフォルトの名無しさん (スッップ Sdb8-Y0VN) mailto:sage [2016/08/02(火) 11:47:13.02 ID:E531VOcLd.net]
アプリケーションを作りたいなんてどっから出てくるの?

742 名前:デフォルトの名無しさん (ワッチョイ 7fe7-UbOe) mailto:sage [2016/08/02(火) 11:51:17.93 ID:YLg91Q2/0.net]
C++使って何がしたいの?

743 名前:デフォルトの名無しさん (スップ Sdb8-Y0VN) [2016/08/02(火) 11:56:03.27 ID:Sm4KzUAwd.net]
使いたくはないけどコンパイラがそれしかないので使ってます

744 名前:デフォルトの名無しさん (ワッチョイ 7fe7-UbOe) mailto:sage [2016/08/02(火) 11:59:45.30 ID:YLg91Q2/0.net]
軽量言語っていう選択肢もあるのよ?コンパイラにこだわる理由がよくわからん。



745 名前:デフォルトの名無しさん (ワッチョイ 11a1-18JB) [2016/08/02(火) 13:36:34.21 ID:zPXv91Z/0.net]
exeができる
exeだけ配布すれば実行できる
大金で購入したら、なんとしても活用したい

746 名前:デフォルトの名無しさん (ワッチョイ 7fe7-UbOe) mailto:sage [2016/08/02(火) 13:41:54.21 ID:YLg91Q2/0.net]
画期的なアルゴリズム組んでソース売ればええやん。

747 名前:デフォルトの名無しさん (ワッチョイ 757b-kdTI) mailto:sage [2016/08/02(火) 13:46:50.53 ID:gW1Wrb7f0.net]
どんなデータも1バイトに圧縮し
復元を不可能にするアルゴリズム

748 名前:デフォルトの名無しさん (ワッチョイ 7fe7-UbOe) mailto:sage [2016/08/02(火) 13:51:29.22 ID:YLg91Q2/0.net]
ハノイ

749 名前:かと思ったら不可逆だった。 []
[ここ壊れてます]

750 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/08/02(火) 13:55:31.98 ID:1+WRG/xHH.net]
>>732
辞書サイズは数億テラバイトです

751 名前:デフォルトの名無しさん (JP 0Hcd-h2bY) mailto:sage [2016/08/02(火) 13:57:13.65 ID:1+WRG/xHH.net]
あ〜ダメだ
検索キーもテラバイト以上だわ

752 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/02(火) 14:59:01.53 ID:WLaUhyh00.net]
>>734
数百エクサバイト

753 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/08/02(火) 15:39:50.56 ID:alL9nwnNa.net]
>>724
成果物ができるまでの間、退屈でしょうから競技プログラミングを始めると張り合いが出ますよ

競技プログラミングにハマるプログラマのスレ 3
tamae.2ch.net/test/read.cgi/prog/1468710465/

754 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/02(火) 18:28:17.64 ID:cLBx5CIGa.net]
>>727
CADみたいなものを作りたい。
3DCADは難しそうだけど、2Dなら簡単かな?って思ってるけど、甘いですか?



755 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/08/02(火) 19:13:01.29 ID:jbpKST8w0.net]
お前さんの実力による
まあサクっとできる奴はこんなスレでそんな質問はしないと思うが

756 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/02(火) 19:39:02.34 ID:1Qrut2t0a.net]
学習し始めって書いたじゃん

おまいさんは、同じことを何回も聞くタイプなんだろうなw

757 名前:デフォルトの名無しさん (ブーイモ MMcd-Y0VN) mailto:sage [2016/08/02(火) 19:50:27.77 ID:cf3BF6/sM.net]
2Dでもアイソメ楕円とか自由曲線は難易度高いかも
後はレイヤー管理がメインかなぁ

758 名前:デフォルトの名無しさん (ワッチョイ 9c42-oK17) mailto:sage [2016/08/02(火) 20:03:23.74 ID:RnjV5EAQ0.net]
CADの場合は、最初からそういう難しいことに取り組まず
直線と円弧での描画をやってみると良いカモ

759 名前:デフォルトの名無しさん (ワッチョイ de3c-Y0VN) mailto:sage [2016/08/02(火) 20:54:47.07 ID:jbpKST8w0.net]
>>740
暗にお前には無理
って言われてることぐらいは理解しようよ

760 名前:デフォルトの名無しさん (ワッチョイ 7202-oK17) mailto:sage [2016/08/02(火) 20:59:37.59 ID:SmTpSA0P0.net]
簡単な図形の描画や内外判定から順に取り組んでいくべき
そして徐々にできることが増えてくると楽しくなる

761 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/02(火) 22:50:07.40 ID:OwqAoKada.net]
釣れたw

762 名前:デフォルトの名無しさん (ブーイモ MMcd-Y0VN) mailto:sage [2016/08/02(火) 22:57:51.52 ID:dweuolJ5M.net]
>>734
俺はもう実装できたぞ

763 名前:デフォルトの名無しさん (ワッチョイ d5e6-Y0VN) mailto:sage [2016/08/02(火) 23:15:00.58 ID:WQEcte8L0.net]
>>740
> 学習し始めって書いたじゃん
どこに書いたんだよw

764 名前:デフォルトの名無しさん (アウアウ Sa01-sui1) mailto:sage [2016/08/03(水) 02:07:06.25 ID:y3itLeKxa.net]
どうして争うの?(・ิω・ิ)



765 名前:デフォルトの名無しさん (ワッチョイ cddc-1jYK) mailto:sage [2016/08/03(水) 06:26:39.84 ID:Ibo0j3eF0.net]
>>738 == >>740 ( == >>724) なのかな?

もしそうなら「デフォルトの名無しさん」で投稿しててIDも違うのに
同じ人物の発言と察してくれってのは無理筋ってモンじゃないかぇ。
ワッチョイの方は一致してるけどさ。

766 名前:デフォルトの名無しさん (ワッチョイ 9c42-oK17) mailto:sage [2016/08/03(水) 07:20:08.42 ID:qmXkrxcu0.net]
そこはワッチョイで察してやれ

767 名前:デフォルトの名無しさん (ワッチョイ b94a-yFKW) mailto:sage [2016/08/03(水) 07:36:48.44 ID:Ve2x0gaK0.net]
>>748
そういう年頃なんだろ

768 名前:デフォルトの名無しさん (ドコグロ MM74-Y0VN) mailto:sage [2016/08/03(水) 07:49:57.03 ID:QRN/XaVqM.net]
初心者でもなんでもいいけどいちいち >>740 みたいなこと言う奴はスルーでいいかと

769 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/03(水) 10:13:34.98 ID:EXqlE33b0.net]
煽り耐性が足りないね

770 名前:デフォルトの名無しさん (ワッチョイ 9c41-UbOe) mailto:sage [2016/08/03(水) 19:09:08.41 ID:h9b7IxGI0.net]
class Foo{};って
宣言?定義?

771 名前:デフォルトの名無しさん (ワンミングク MMed-Y0VN) mailto:sage [2016/08/03(水) 19:35:16.32 ID:wYpM7kzSM.net]
定義

772 名前:デフォルトの名無しさん (ワッチョイ 9c41-UbOe) mailto:sage [2016/08/03(水) 19:45:08.17 ID:h9b7IxGI0.net]
定義ならアドレスが取れるはずですよね?
int a;
なら&aみたく。
どうやってアドレスを取るのですか?

773 名前:デフォルトの名無しさん (ワッチョイ 7551-xLev) mailto:sage [2016/08/03(水) 19:49:36.89 ID:fJKhNvbj0.net]
>定義ならアドレスが取れるはずですよね?

なんでそう思った

774 名前:デフォルトの名無しさん (ワッチョイ 9c41-UbOe) mailto:sage [2016/08/03(水) 19:5 ]
[ここ壊れてます]



775 名前:3:24.68 ID:h9b7IxGI0.net mailto: >なんでそう思った

宣言と定義の違いは
[]
[ここ壊れてます]

776 名前:デフォルトの名無しさん (ワッチョイ df12-xLev) mailto:sage [2016/08/03(水) 20:15:02.76 ID:N9MmOijn0.net]
どうでもよいけど、定義ならアドレスが取れるというのは君の思い込みだから

777 名前:デフォルトの名無しさん (ワッチョイ 7202-oK17) mailto:sage [2016/08/03(水) 20:54:34.52 ID:sZD2VxNu0.net]
メモリ上にないもののアドレスは取れない

778 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/08/03(水) 21:02:34.68 ID:wmDQLAzIr.net]
>>758
日本語で会話のキャッチボールが出来ない低能は去れ

779 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/08/03(水) 21:05:53.07 ID:wmDQLAzIr.net]
そのうち755に対して「バーカ」と言い出すんだろうか。
狙ったような引っ掛け質問だ

780 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/03(水) 21:10:28.83 ID:brj0j+YHa.net]
>>760
そのメモリ上に、存在しなくても定義というの?
extern int a;
もaはメモリは確保しない。
定義なのかしらん?w

781 名前:デフォルトの名無しさん (スプッッ Sdb8-Y0VN) [2016/08/03(水) 21:12:53.15 ID:1RE7rbq9d.net]
// クラス名の宣言
class C ;

// クラスの宣言と定義
class C { } ;

782 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/03(水) 21:18:30.62 ID:tpuDUd8ra.net]
だから定義の定義を言えよ

783 名前:デフォルトの名無しさん (ワッチョイ 7202-oK17) mailto:sage [2016/08/03(水) 21:20:54.59 ID:sZD2VxNu0.net]
言わなくていいぞ

784 名前:デフォルトの名無しさん (ワッチョイ 7ea6-n/e8) [2016/08/03(水) 21:21:01.79 ID:EXqlE33b0.net]
>>759
どうでもよくねえだろ

>>763
#define はアドレスが取れたり取れなかったりする
extern int a; は定義ではない宣言だ

メモリを取るかどうかが定義と宣言の境界だと思ってるやつ
そのメモリが実行環境か翻訳環境かの意識はあるか?



785 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/03(水) 21:26:02.48 ID:tpuDUd8ra.net]
だったら定義の定義を、言えって

786 名前:デフォルトの名無しさん (アウアウ Sa01-26Kx) mailto:sage [2016/08/03(水) 21:26:44.71 ID:tpuDUd8ra.net]
偉そうなこと抜かしてる割には、結局知らんのかいwwww

787 名前:デフォルトの名無しさん (ワッチョイ d6c0-yFKW) mailto:sage [2016/08/03(水) 21:27:42.07 ID:nLkvqRyM0.net]
ふと思ったんだが最適化でレジスタに確保されてしまった変数はアドレス取れるの?

788 名前:デフォルトの名無しさん (スプッッ Sd19-Y0VN) mailto:sage [2016/08/03(水) 21:29:08.10 ID:tfmCVBfOd.net]
どこにオブジェクトがあるんだよ

789 名前:デフォルトの名無しさん (ワッチョイ 7c33-Y0VN) [2016/08/03(水) 21:30:10.87 ID:d/dZHX0p0.net]
>>770
それは最適化されないと思われ。

790 名前:デフォルトの名無しさん (ワッチョイ b2a6-oK17) mailto:sage [2016/08/03(水) 22:13:25.66 ID:BOTm7b5n0.net]
>>754
どこに何個の変数があるんだよ

791 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/08/03(水) 22:27:32.41 ID:wmDQLAzIr.net]
764を読んでもこのようなレスが出てくるのが不思議だ。
どうしてオブジェクトの定義のみが定義だと盲信してしまったのか

class A {}; // クラスの定義
namespace {} // 名前空間の定義
namespace aho = std;//エイリアスの定義
template<typename T> void f() {}//テンプレートの定義
int a = 0; //オブジェクト(変数)の定義

792 名前:デフォルトの名無しさん (ワッチョイ 9c41-MYFu) mailto:sage [2016/08/03(水) 22:28:34.94 ID:h9b7IxGI0.net]
例を挙げるのではなく、定義の定義をいえないのか?

793 名前:デフォルトの名無しさん (オッペケ Sr69-Y0VN) mailto:sage [2016/08/03(水) 22:34:12.86 ID:wmDQLAzIr.net]
言おうとしたら766に止められたので…
規格の3.1段落2で定義と規定されたものが定義

794 名前:デフォルトの名無しさん (ワッチョイ b2a6-oK17) mailto:sage [2016/08/03(水) 22:35:15.79 ID:BOTm7b5n0.net]
>>775
まず自分が「アドレス」の定義を言ってからにすれば?



795 名前:デフォルトの名無しさん (ワッチョイ 9c41-MYFu) mailto:sage [2016/08/03(水) 22:40:43.22 ID:h9b7IxGI0.net]
ばかはだまってろ

796 名前:デフォルトの名無しさん (スププ Sdb8-Y0VN) mailto:sage [2016/08/03(水) 22:45:55.19 ID:zTK4B9l9d.net]
規格で定義とされるものが企画上の定義の定義

797 名前:デフォルトの名無しさん (ワッチョイ b2a6-oK17) mailto:sage [2016/08/03(水) 22:49:13.37 ID:BOTm7b5n0.net]
強気だな

798 名前:デフォルトの名無しさん (ワッチョイ 9c41-MYFu) mailto:sage [2016/08/03(水) 22:49:50.10 ID:h9b7IxGI0.net]
そんなこと書くなら、漢字くらい間違えずに書けよw

799 名前:デフォルトの名無しさん (ワッチョイ df12-xLev) mailto:sage [2016/08/03(水) 22:57:03.34 ID:N9MmOijn0.net]
早く>>756の恥ずかしい書き込みが流れると良いですね

800 名前:デフォルトの名無しさん (ワッチョイ d5e6-Y0VN) mailto:sage [2016/08/03(水) 23:01:08.38 ID:L2GgWGz30.net]
>>754の言う定義って言うのはアドレスがとれるもののことだそうだから定義じゃないよ

801 名前:デフォルトの名無しさん (ワッチョイ 9c42-oK17) mailto:sage [2016/08/03(水) 23:11:16.91 ID:qmXkrxcu0.net]
建物の定礎みたいだな

802 名前:デフォルトの名無しさん (ワッチョイ 768b-UbOe) mailto:sage [2016/08/03(水) 23:25:38.25 ID:bs94iYaP0.net]
GCCはCで書かれているのでは…

803 名前:デフォルトの名無しさん (ワッチョイ 6741-iWsk) mailto:sage [2016/08/04(木) 00:06:53.91 ID:GwQfuXTc0.net]
答えれずに質問されたさいの間違いをつつくことしかできない連中ばっかだなwww

804 名前:デフォルトの名無しさん (ワッチョイ df13-yTU/) mailto:sage [2016/08/04(木) 00:11:01.72 ID:zknMnxXT0.net]
>>785
最近はc++だとか



805 名前:デフォルトの名無しさん (ワッチョイ 6742-+Lqe) mailto:sage [2016/08/04(木) 01:51:50.41 ID:02Ni6VFF0.net]
gcc-6.1.0.tar.gz 展開してソース見たけど、Cだな

806 名前:デフォルトの名無しさん (ワッチョイ cb7b-bKmi) mailto:sage [2016/08/04(木) 02:37:59.26 ID:z8XBjF8D0.net]
コンパイラみたいなソフトだったら例外ですっ飛ばすとかあんま必要ないしな。

807 名前:デフォルトの名無しさん (ワッチョイ df73-40WA) mailto:sage [2016/08/04(木) 06:04:40.50 ID:w3J0CztI0.net]
ぐぐった
宣言ー外部に表明
定義ー概念内容をはっきりと定めること

>>754
表明?ー意見・意志などをひとの前にはっきりと表し示すこと
>>767が適切に答えている
実行環境に直接関係するのか、翻訳環境でのみ利用されるのか

808 名前:デフォルトの名無しさん (ワッチョイ eb7b-uSQd) [2016/08/04(木) 06:41:20.15 ID:Mm46IUtm0.net]
>>788
gccの下に拡張子が .cc のファイルあるだろ

809 名前:デフォルトの名無しさん (ドコグロ MM0f-d+5h) mailto:sage [2016/08/04(木) 06:46:46.60 ID:l9MpwXpkM.net]
>>770
アドレス取るとメモリー上に確保する
インライン関数とかもアドレス取るとそれようの関数を生成したりする

810 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 08:39:12.95 ID:Xnj5FLHOd.net]
>>775みたいな再帰的な質問はルール違反だな。

811 名前:デフォルトの名無しさん (ワッチョイ 6742-+Lqe) mailto:sage [2016/08/04(木) 08:42:31.88 ID:02Ni6VFF0.net]
>>791
あるな。見落としてたすまない。

812 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 09:02:08.35 ID:yc16QQH40.net]
宣言は重複できる
定義は重複できない

813 名前:デフォルトの名無しさん (ワッチョイ f3c9-d+5h) mailto:sage [2016/08/04(木) 11:34:04.46 ID:uGkDxVxl0.net]
定義も重複できます。
インライン関数、クラス、テンプレートなどなど。

814 名前:デフォルトの名無しさん (ワッチョイ 6741-iWsk) mailto:sage [2016/08/04(木) 12:05:59.70 ID:GwQfuXTc0.net]
結局定義の意味を知らないやつばっかじゃんw



815 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 12:10:07.43 ID:Xnj5FLHOd.net]
>>797
最初の質問をほっぽらかしてるから定義問題なんか誰も答えないよ

816 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 12:13:33.04 ID:yc16QQH40.net]
>>796
inline void f() {}
inline void f() {} //C2084
class a{};
class a{}; //C2011
template <typename T> void t(T) {}
template <typename T> void t(T) {} //C2995

817 名前:デフォルトの名無しさん (スプッッ Sd3f-d+5h) mailto:sage [2016/08/04(木) 12:15:38.99 ID:NBIT0foTd.net]
>>799
同一ソースファイル内で重複はそりゃだめだろ。

818 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 12:18:52.00 ID:yc16QQH40.net]
で、定義は重複できるのか?

819 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 12:26:18.94 ID:Xnj5FLHOd.net]
そんな ODR C++ でぐぐればすぐ出てくる質問すんな

820 名前:デフォルトの名無しさん (ドコグロ MM0f-d+5h) mailto:sage [2016/08/04(木) 12:53:11.55 ID:l9MpwXpkM.net]
>>793
前の「定義」と後ろの「定義」は対象が違う
そんな区別もできないおんぼろパーサーは捨ててしまえ

821 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 12:58:46.48 ID:yc16QQH40.net]
出た、困ったらグーグルに丸投げして逃げるやつ

822 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 13:07:55.31 ID:Xnj5FLHOd.net]
>>803
そういう意味ではなく、もとの質問からどんどん遡っていつまでも終わらない質問を繰り返す態度を指して「再帰的な質問」と言っている。

823 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 13:12:06.88 ID:Xnj5FLHOd.net]
だいたい>>765の質問が悪い。そんなの自分で調べろ。くぐれと言われるのも当然だ。
もとの質問(>>756とか)に対する回答が来てるのに無視してる態度が気に食わん。

824 名前:デフォルトの名無しさん (ワッチョイ 4be6-d+5h) mailto:sage [2016/08/04(木) 13:56:23.92 ID:Kzc2I9D20.net]
まともな質問ができなけりゃまともな答えは返ってこないわな



825 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 14:11:48.39 ID:yc16QQH40.net]
効いてる、効いてるw

826 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 14:21:54.23 ID:Xnj5FLHOd.net]
とにかく>>756
「定義ならアドレスが取れるはずですよね?」

が始まりだから。

827 名前:デフォルトの名無しさん (アウアウ Sa47-82/a) mailto:sage [2016/08/04(木) 14:38:30.51 ID:oA3L4Jsua.net]
じゃ、定義とはなんですか?

828 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 15:25:13.99 ID:BIfvsNQ70.net]
定義と宣言の説明だけで無駄レスし過ぎだおまいら

829 名前:デフォルトの名無しさん (ドコグロ MM0f-d+5h) mailto:sage [2016/08/04(木) 15:36:45.86 ID:l9MpwXpkM.net]
>>805
遡っているならいつかは辿り着くだろうし
堂々巡りしてるなら業界的にはループしてる
って言うんじゃね?

830 名前:デフォルトの名無しさん (ワッチョイ cb7b-TDLi) mailto:sage [2016/08/04(木) 15:47:34.64 ID:giSm9Lrj0.net]
宣言は同じものを2行並べて書いてもエラーにならない
定義は同じものを2行並べて書くとエラーになる

これであってる?

831 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 15:53:32.09 ID:BIfvsNQ70.net]
宣言というのはソイツがナニモノであるか表記したもの
定義というのはソイツの中身を記述したもの
アドレスはソイツをインスタンスしたところで初めて取れる

832 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 16:31:33.03 ID:yc16QQH40.net]
へー、じゃクラステンプレートはインスタンスしただけでアドレスを持つようになるのか

833 名前:デフォルトの名無しさん (ワッチョイ 7b7b-o/gb) [2016/08/04(木) 16:53:24.54 ID:u/EohbaA0.net]
バ カ

834 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 17:25:37.28 ID:BIfvsNQ70.net]
>>815
最適化の具合による



835 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 17:27:02.90 ID:BIfvsNQ70.net]
ていうかインスタンス化してアドレスのない構造体なんかないだろ

836 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 18:14:05.28 ID:Xnj5FLHOd.net]
テンプレートのインスタンス化って
using myVector = std::vector<myClass>;
しただけでインスタンス化したことになるんだっけ?
(オブジェクトは作ってない)

837 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 18:27:58.43 ID:BIfvsNQ70.net]
それは単なるアイリアスだろ

838 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 18:28:06.63 ID:yc16QQH40.net]
そゆこと

839 名前:デフォルトの名無しさん (アウアウ Sa47-82/a) mailto:sage [2016/08/04(木) 18:29:14.33 ID:p8X98lhoa.net]
>>820
アイリアスwww

840 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 18:30:04.62 ID:yc16QQH40.net]
void func(std::vector<myClass>* str)
{
std::cout << str;
}
int main() { func(nullptr); }
で、どこにアドレスがあるんだ?
最適化であったりなかったりするのか?

841 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 18:35:34.77 ID:BIfvsNQ70.net]
この馬鹿手に負えないな

842 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 18:36:50.28 ID:Xnj5FLHOd.net]
そうだな>>819では実体化されないとわかった。
実オブジェクトを生成するか、
template class std::vector<myClass>;
としなければならないと今知った。

843 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 18:39:02.25 ID:yc16QQH40.net]
手に負えないと正直にぬかしたか

844 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 18:40:34.11 ID:10JPHxlsr.net]
>>818
少なくともISO/IEC 14882:2003にはアドレスを持つ構造体は無いぞ



845 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 18:41:26.17 ID:BIfvsNQ70.net]
strとnullptrがモロにアドレスだろ
で、アドレスがどこにあるかわからんとか寝ぼけてんの?

846 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 18:43:22.58 ID:BIfvsNQ70.net]
>>827
言い方が悪かった
構造体をインスタンス化した実体な

847 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 19:00:44.98 ID:10JPHxlsr.net]
>>829
どうしたいきなり
>>815は型であるクラスの定義(クラステンプレートをインスタンス化したもの)の話をしていたのに
突然 、変数の話をしだすなんて

848 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 19:02:19.74 ID:10JPHxlsr.net]
>nullptrがモロにアドレスだろ
細かいことだが、んなこたーない

849 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 19:06:08.42 ID:BIfvsNQ70.net]
>>830 テンプレートもインスタンス化したら実体をもつわけだが
真性の馬鹿なのか?

850 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 19:07:31.61 ID:BIfvsNQ70.net]
>>831
じゃnullptrがアドレスじゃない証明をしてみろよ

851 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/04(木) 19:10:55.23 ID:BIfvsNQ70.net]
日本のコーダの質が知れるわw馬鹿しか居ないw

852 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 19:12:36.44 ID:10JPHxlsr.net]
>>832
その実体にはアドレスが無いだろう、
というのが>>815のレスなのだが
どうして「テンプレートをインスタンス化した実体(=クラス)」と
「クラスをインスタンス化した実体」をすり替えたがるのか

853 名前:デフォルトの名無しさん (スップ Sdef-d+5h) mailto:sage [2016/08/04(木) 19:13:43.59 ID:Xnj5FLHOd.net]
結局>>756
「定義ならアドレスが取れるはずですよね?」
という質問の意味はなんだったんだ?

「その型のポインタ変数にnullptrを代入できるか」ってことならむろんyesだが、それなら宣言だけでもできるしな。

854 名前:デフォルトの名無しさん (ワッチョイ 7f7b-tuv5) mailto:sage [2016/08/04(木) 19:22:45.01 ID:Wyyp2Ekr0.net]
>>833
nullptrは型情報をもっている
アドレスは型情報を持たない



855 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 20:15:48.72 ID:xD/P91aqr.net]
>>836
頭のおかしな奴に論理性を求めてはいけない

>>754
>class Foo{};って宣言?定義?
 ↓
>>756(本人)
>定義ならアドレスが取れるはずですよね?

これを見ただけで相手にする価値が無いことは明らか

856 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/04(木) 20:35:45.14 ID:OXXVH+Z60.net]
まずコーダとかSIer丸出しな言葉使いやめたら

857 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 20:41:47.51 ID:xD/P91aqr.net]
>>833
nullptrはポインターでもメンバーへのポインターでもなく、整数型でもないとされている。
むしろこれがアドレスであると結論付ける根拠が何ら見いだせない

858 名前:デフォルトの名無しさん (ワッチョイ 2f68-8B3a) mailto:sage [2016/08/04(木) 20:50:04.03 ID:tght595J0.net]
class A : public B<C> { ... }
みたいにテンプレートクラスBを継承した場合、Aは普通のクラスになるんですか?それともテンプレートクラス?

859 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/04(木) 20:51:26.39 ID:OXXVH+Z60.net]
Aがテンプレートならテンプレートクラス

860 名前:デフォルトの名無しさん (ワッチョイ 6741-iWsk) mailto:sage [2016/08/04(木) 20:52:08.14 ID:GwQfuXTc0.net]
結局答えは出せたの?
定義の意味は?
アドレスが云々が間違えてたとして結局は答えだせないんでしょwwww

861 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/04(木) 20:52:26.72 ID:yc16QQH40.net]
>>832
template <typename> class afo { };
afo<int>* p;
どこに実体があるんだよ!

862 名前:デフォルトの名無しさん (ワッチョイ 2f68-8B3a) mailto:sage [2016/08/04(木) 20:52:29.73 ID:tght595J0.net]
>>842
継承元に関係なくA次第ってことですね
どうもありがとう

863 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/04(木) 20:58:24.42 ID:xD/P91aqr.net]
>>843
>結局は答えだせないんでしょ
昨日「規格の3.1段落2」というヒントをやったけど、
日本語あまり得意じゃなかった?

864 名前:デフォルトの名無しさん (スップ Sd6f-d+5h) mailto:sage [2016/08/04(木) 21:34:07.30 ID:0+b6LrNLd.net]
民明書房刊「C++の定義と宣言 その留意点」(江添亮)



865 名前:デフォルトの名無しさん (ワッチョイ bba2-d+5h) [2016/08/04(木) 21:42:59.85 ID:cCkuFoiR0.net]
江田島平八やろ

866 名前:デフォルトの名無しさん (ワッチョイ f763-d+5h) mailto:sage [2016/08/04(木) 23:21:53.70 ID:lGnnrOsl0.net]
そろそろ次の人どうぞ

867 名前:デフォルトの名無しさん (ワッチョイ f317-d+5h) mailto:sage [2016/08/05(金) 01:16:51.21 ID:Q1teh0cP0.net]
inline関数ってコンパイル時に展開しといて実行時のオーバヘッドをなくせるけど、それなら全部inlineて書いたほうがお得だよね
inline関数のデメリットは何ですか?

868 名前:デフォルトの名無しさん (ワッチョイ 7312-r8bK) mailto:sage [2016/08/05(金) 01:40:59.24 ID:VlcB2rw70.net]
プログラムのサイズが超でかくなる
CPUのキャッシュのミスヒット率が上がるかもしれない
どうせ、仮想関数はインライン展開されない

一番問題なのは、コンパイル時間が超長くなる
インライン関数はヘッダに書く
ということは、それを読み込む全ての.cppファイル・・・
な!

869 名前:デフォルトの名無しさん (ワッチョイ f7cf-r8bK) mailto:sage [2016/08/05(金) 01:45:58.39 ID:h9gyRaS30.net]
>>850
・分割コンパイルによるビルド時間の効率化と逆行する。
・inline っていっぱい書くのがめんどい。良いコンパイラなら勝手にやってくれるところなのに。

870 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/05(金) 04:17:33.66 ID:+HzEYeYM0.net]
再帰はインラインできねぇだろハゲ!

871 名前:デフォルトの名無しさん (ワッチョイ f3e7-PVLz) mailto:sage [2016/08/05(金) 04:20:54.85 ID:qb9JFZzp0.net]
末尾再帰でループに展開できればあるいは・・・。

872 名前:デフォルトの名無しさん (ワッチョイ 4fc0-QI3I) mailto:sage [2016/08/05(金) 05:40:43.21 ID:cHxSirtv0.net]
>>853
そんなに煽るとレスが再帰するよ

873 名前:デフォルトの名無しさん (ワッチョイ f763-d+5h) mailto:sage [2016/08/05(金) 06:49:39.69 ID:KuwiCwk00.net]
C++17で変数もinline指定出来るようになったら
インクルードファイルに多量のグローバル変数が溢れる予感

874 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/05(金) 07:59:52.63 ID:9H/d0cigr.net]
>>853
そんな、インライン関数とインライン展開の話をすり替えられても…



875 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/05(金) 08:39:49.67 ID:w0huO64O0.net]
プリコンパイル済みヘッダに書かれた関数はインライン展開できる?

876 名前:デフォルトの名無しさん (ワッチョイ f3e7-PVLz) mailto:sage [2016/08/05(金) 08:41:00.76 ID:qb9JFZzp0.net]
環境依存じゃね?

877 名前:デフォルトの名無しさん (ワッチョイ bba2-d+5h) [2016/08/05(金) 08:44:24.26 ID:DFO/+W5I0.net]
ヘッダファイルのプリコンパイルすら環境依存だしね。。。

878 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/05(金) 18:02:13.50 ID:g8dNuMjF0.net]
858はアセンブラが読めないわけね

879 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/05(金) 20:47:59.48 ID:9H/d0cigr.net]
環境依存とは言うがが
プリコンパイルしたためにインライン展開されなくなってしまったら
プリコンパイルの存在意義は無いに等しい

880 名前:デフォルトの名無しさん (ワッチョイ 2fc2-4YG7) mailto:sage [2016/08/05(金) 23:39:23.84 ID:XaBR5PYt0.net]
心配するな。
お前の存在意義だって無いに等しいんだからさ。

881 名前:デフォルトの名無しさん (ワッチョイ bbbf-d+5h) [2016/08/05(金) 23:44:30.05 ID:7g3iCo2L0.net]
>>862
どう思おうが君の自由でもあり僕の自由でもあり。

882 名前:デフォルトの名無しさん (アウアウ Sa47-DOZo) mailto:sage [2016/08/06(土) 02:10:30.65 ID:GoVmW8oka.net]
なんでいつ開いても喧嘩してるのこのスレ

883 名前:デフォルトの名無しさん (ワッチョイ df4d-d+5h) mailto:sage [2016/08/06(土) 03:59:14.66 ID:+SerLQJ20.net]
どのスレもこんな感じだろ。
昔から日本のプログラマはレベル低い割に性格悪くてな。
Stackoverflow辺りの建設的なやりとりと比べると…

884 名前:デフォルトの名無しさん (ワッチョイ 6fcc-d+5h) mailto:sage [2016/08/06(土) 04:40:37.89 ID:BLz0TWEd0.net]
屁理屈言うと頭良さそう的な糞風潮ジャアップw



885 名前:デフォルトの名無しさん (ワッチョイ 6f3c-d+5h) mailto:sage [2016/08/06(土) 06:46:22.75 ID:y/TrjN6T0.net]
自由だけど常識的には >>862 みたいに考えるわな

886 名前:デフォルトの名無しさん (ブーイモ MM6f-d+5h) [2016/08/06(土) 08:44:07.85 ID:GOiKP7RVM.net]
なぜ色々な考えがある中で自分の考えが多数派と思うの?
規格と違って明確な答えなんて出ないと思うのだが

887 名前:デフォルトの名無しさん (ワッチョイ bbbf-d+5h) [2016/08/06(土) 08:54:34.06 ID:cMWpKQUH0.net]
もうやめときなよ。
>>862みたいな否定表現を使う偏向思想な人、マには多い気がするけど、答えがないから主観での宗教論争になりがち。
こういう人を相手にするのは、ディベートの練習にはいいかもだけど、会社では時間の無駄。
肯定表現を使ってくれれば有意義な議論ができるんだけどね。

888 名前:デフォルトの名無しさん (ワントンキン MM2f-uSQd) [2016/08/06(土) 09:18:43.60 ID:AzdnJyWBM.net]
よし、お前ら自分のGitHubアカウント晒そうぜ!
書いたコード見ればレベル低いかどうか丸わかりさ!

889 名前:デフォルトの名無しさん (ワッチョイ 7f7b-tuv5) mailto:sage [2016/08/06(土) 09:45:32.37 ID:4oIDfdFe0.net]
>>870
お前のような非建設的な発言より>>862の方が説得力があって、プリコンパイルドヘッダーを使っても、
インライン展開されない事は無いだろうと推測できる

むしろ、>>858ができないかも?という推論に至った方が異端
できなくする合理的な理由は無いだろう

890 名前:デフォルトの名無しさん (ワッチョイ f3e7-PVLz) mailto:sage [2016/08/06(土) 09:46:04.35 ID:Fje4jw7f0.net]
yukicoderたのしー。

891 名前:デフォルトの名無しさん (アウアウ Sa47-DOZo) mailto:sage [2016/08/06(土) 10:03:09.75 ID:GoVmW8oka.net]
ついでに競プロのレーティングも付記

892 名前:デフォルトの名無しさん (ワッチョイ 4be6-d+5h) mailto:sage [2016/08/06(土) 10:03:30.01 ID:WviBn9P10.net]
>>862程度の表現が嫌で有意義な議論ができなくなるってすごいな
会社でやって行きづらそう

893 名前:デフォルトの名無しさん (ワッチョイ 6f3c-d+5h) mailto:sage [2016/08/06(土) 13:40:27.06 ID:y/TrjN6T0.net]
議論では勝てそうにないから
言い方に難癖つけようってことでしょ
それでも勝てないと人格攻撃
にちゃんではよくみる光景

894 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/06(土) 15:19:34.98 ID:rSXSUUu30.net]
C++スレでC++でない話だけ100%のレスするやつな



895 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/06(土) 19:21:45.03 ID:giMifQMJ0.net]
議論というのは新しい提案にたいして行うものであって
決まっていることを無い知恵絞って自分の主張を認めさせるものではない

896 名前:デフォルトの名無しさん (スップ Sd6f-d+5h) mailto:sage [2016/08/06(土) 19:42:09.28 ID:Xkhj5Nx+d.net]
みんながそう控えめならいいんだけどね

897 名前:デフォルトの名無しさん (ワッチョイ cb7b-bKmi) mailto:sage [2016/08/06(土) 20:21:02.04 ID:SlzxzKwb0.net]
へ理屈語るにはうってつけの言語。それがc++。

898 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/06(土) 20:22:42.16 ID:vFciff3ar.net]
自分の主張を認めさせる必要が有る時点で
決まっていないことだろうに。
それに議論が新しい提案に対して行うものだなんて
糖質は今日も幻覚が酷いな

899 名前:デフォルトの名無しさん (ブーイモ MM67-d+5h) mailto:sage [2016/08/06(土) 21:27:34.52 ID:U1DuUqbyM.net]
だから、そういうのを我慢して
書き込まないんだよ
子供じゃないんだから

900 名前:デフォルトの名無しさん (ワッチョイ 6741-PVLz) mailto:sage [2016/08/06(土) 21:52:20.89 ID:Ng0KAkRk0.net]
くだらねー連中ばっかだな

901 名前:デフォルトの名無しさん (ワッチョイ 2fc2-4YG7) mailto:sage [2016/08/06(土) 22:00:48.66 ID:fG7kY+EI0.net]
baka bakka

902 名前:デフォルトの名無しさん (アウアウ Sa47-DOZo) mailto:sage [2016/08/07(日) 02:46:25.23 ID:ypu2c+2fa.net]
>>884
ルリルリ

903 名前:デフォルトの名無しさん (ワッチョイ 4fc0-QI3I) mailto:sage [2016/08/07(日) 05:27:38.94 ID:qJNsOOv30.net]
日本語プログラミング言語『なでしこ』スレ6.1©2ch.net
echo.2ch.net/test/read.cgi/tech/1458981074/

904 名前:デフォルトの名無しさん (ワッチョイ f763-d+5h) mailto:sage [2016/08/07(日) 05:35:17.61 ID:W0a9UwyT0.net]
スレ違いは去れ



905 名前:デフォルトの名無しさん (ワッチョイ 6741-PVLz) mailto:sage [2016/08/07(日) 06:01:23.74 ID:lFUkCgKK0.net]
C++を習得するのにどれくらいかかりますか?
秀丸のようなテキストエディタくらいが書けるくらいになりたい

906 名前:デフォルトの名無しさん (ワッチョイ ef9f-OcIm) mailto:sage [2016/08/07(日) 06:21:20.08 ID:q5z6NkaV0.net]
秀丸は20年以上開発が続いていると思うのでそのくらいを目安に

907 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/07(日) 07:29:49.48 ID:GpzWvVwt0.net]
>>888
俺みたいに頭悪いやつでもせいぜい2年
TCPLの初版からやってるが、
C++98, C++11が出るたびにまた初心者からやり直しで
それが収まってくるのがだいたい1年強

908 名前:デフォルトの名無しさん (JP 0H67-EXAE) mailto:sage [2016/08/07(日) 08:28:34.84 ID:xBB6TA9CH.net]
秀丸は Win95 より前から現役だから
VC6 程度マスターできれば足りるはず

しかし現状のスキル一切提示せずにどれくらいと聞いても

909 名前:デフォルトの名無しさん (ワッチョイ 7b7b-o/gb) [2016/08/07(日) 09:02:30.00 ID:3DCDp1x40.net]
言語の習得と有用なアプリを作れる才能は別のこと

910 名前:デフォルトの名無しさん (ワッチョイ f37b-d+5h) mailto:sage [2016/08/07(日) 09:23:24.83 ID:EKTcu/DK0.net]
関数のプロトタイプ宣言とヘッダーファイルの関係についておしえて。

911 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/07(日) 10:40:35.94 ID:FG1Pf9COr.net]
ではまずそのヘッダーファイルとやらの定義を伺おうか

912 名前:デフォルトの名無しさん (アウアウ Sa47-82/a) mailto:sage [2016/08/07(日) 12:50:03.51 ID:qMBdgW/Da.net]
>>891
intとlongの違いがわからないれべるです

913 名前:デフォルトの名無しさん (ワッチョイ 7fcb-Kd7t) mailto:sage [2016/08/07(日) 12:58:22.95 ID:XQNWrGwh0.net]
これは高度!

914 名前:デフォルトの名無しさん (ワッチョイ f3c9-d+5h) mailto:sage [2016/08/07(日) 13:04:27.46 ID:aG2G1G5u0.net]
intとlongは同じだからな〜



915 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/07(日) 13:19:42.26 ID:FG1Pf9COr.net]
つまり897とタメをはるレベル

916 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/07(日) 13:48:39.68 ID:t/bIx9j80.net]
>>889
最初から秀丸のコピーを作るつもりでやればそんなにかからないけどな

917 名前:デフォルトの名無しさん (JP 0H67-EXAE) mailto:sage [2016/08/07(日) 13:50:07.72 ID:xBB6TA9CH.net]
釣りっぽい

918 名前:デフォルトの名無しさん (ワッチョイ cb7b-bKmi) mailto:sage [2016/08/07(日) 15:33:20.88 ID:HWUltxTh0.net]
そりゃ極論すればベターc な使い方してても作れるしな。

919 名前:デフォルトの名無しさん (ワッチョイ 2bdc-buIf) mailto:sage [2016/08/07(日) 15:49:58.64 ID:i5zx9v470.net]
秀丸のクローンだかコピーだかをC++で作ったら
ぜひ製品名「禿丸エディタ」で公開してくれ。

920 名前:デフォルトの名無しさん (ワッチョイ bbbf-d+5h) [2016/08/07(日) 16:30:41.57 ID:SU1DoGHK0.net]
おーい禿丸

921 名前:デフォルトの名無しさん (ワッチョイ 7730-+Lqe) mailto:sage [2016/08/07(日) 17:02:56.43 ID:9x/mUqeF0.net]
のむらしんぼじゃねぇのかよ

922 名前:デフォルトの名無しさん (ワッチョイ 7f36-82/a) mailto:sage [2016/08/07(日) 17:42:43.71 ID:HBtfJ5u1 ]
[ここ壊れてます]

923 名前:0.net mailto: あの程度のものなら1年あれば作れるようになる []
[ここ壊れてます]

924 名前:デフォルトの名無しさん (ワッチョイ 7b7b-o/gb) [2016/08/07(日) 17:54:38.08 ID:3DCDp1x40.net]
と、永遠に作れないゴミがのたまっています



925 名前:デフォルトの名無しさん (ワッチョイ 7f36-82/a) mailto:sage [2016/08/07(日) 17:58:45.56 ID:HBtfJ5u10.net]
たかがテキストエディタだろ
何が難しいの?

926 名前:デフォルトの名無しさん (ブーイモ MM67-d+5h) mailto:sage [2016/08/07(日) 18:29:00.35 ID:uNCwY4UvM.net]
つ https://www.finseth.com/craft/
がんがれ

927 名前:デフォルトの名無しさん (ワッチョイ 7b7b-o/gb) [2016/08/07(日) 18:45:50.14 ID:3DCDp1x40.net]
厚かましい全能感を抱いている無能はこの業界にはいっぱいいます
そういうのを見ぬいてパートナー候補から切り捨てていくのがこの業界で生きていく第一の条件です

928 名前:デフォルトの名無しさん (ワッチョイ 7f36-82/a) mailto:sage [2016/08/07(日) 18:46:38.49 ID:HBtfJ5u10.net]
読んでみたけど何が難しいの?

929 名前:デフォルトの名無しさん (JP 0H67-EXAE) mailto:sage [2016/08/07(日) 19:15:24.22 ID:xBB6TA9CH.net]
メモリ操作のオーバーヘッドを対策できて
IME制御やマルチバイト文字のクソ面倒くさいのを超えたら
大体出来たようなものかな

あっ検索条件と結果のハイライトが改行をまたげるかどうかは相談してね

930 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/07(日) 19:42:47.91 ID:FG1Pf9COr.net]
秀丸は結構頑張ってるとは思うけど、
C++ソースの強調表示には対応してなかったような。
クソだ

931 名前:デフォルトの名無しさん (ワッチョイ 6742-+Lqe) mailto:sage [2016/08/07(日) 19:44:27.25 ID:bbyjljOW0.net]
マクロも頼むわ

932 名前:デフォルトの名無しさん (ワッチョイ bfcd-82/a) mailto:sage [2016/08/07(日) 20:16:02.33 ID:4DNn9i2W0.net]
>>912
してるよ

933 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/07(日) 21:19:16.23 ID:FG1Pf9COr.net]
>>912
今最新版インスコしてみたが全然正しく表示されないのは俺だけ?
C++14用のファイルも読み込ませた

auto a=200;
auto b=100ms;
auto c=1'000e-059;
auto d=LR"(abc
def\nefg)";
struct final final {};

934 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/07(日) 21:19:41.43 ID:FG1Pf9COr.net]
間違えた
>>914だった



935 名前:デフォルトの名無しさん (ワッチョイ ef9f-OAZv) mailto:sage [2016/08/07(日) 21:33:13.04 ID:A9VPt4fN0.net]
正しいC++ソースの強調表示をISOに提案しといて

936 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/07(日) 22:54:27.59 ID:GpzWvVwt0.net]
桁区切りやR文字列は早くなんとかして欲しいな
プログラム打ってて、軽いが継続的なストレスだ

937 名前:デフォルトの名無しさん (オッペケ Sr07-d+5h) mailto:sage [2016/08/07(日) 23:03:42.36 ID:FG1Pf9COr.net]
何にでも応用できそうだな
「たかがコンパイラーのフロントエンドだろ。何が難しいの?」
「たかが会計ソフトだろ。何が難しいの?」
「たかがみずほ銀行の次期インフラ設計・構築だろ。何が難しいの?」

938 名前:デフォルトの名無しさん (ワッチョイ bfcd-82/a) mailto:sage [2016/08/08(月) 00:19:21.07 ID:MYFeFApz0.net]
実際そうだろ
ソフトウェアは作った通りにしか、動かないんだから、きちんと作ればいいだけ。
何が難しいの?

939 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/08(月) 00:22:17.57 ID:7driPpZU0.net]
きちんと作る事が

940 名前:デフォルトの名無しさん (ワッチョイ bfcd-82/a) mailto:sage [2016/08/08(月) 00:29:45.48 ID:4zMTW4DS0.net]
じゃあ、書くのやめろ

941 名前:デフォルトの名無しさん (ワッチョイ 2b75-IMEh) mailto:sage [2016/08/08(月) 00:30:04.57 ID:pofueGcp0.net]
コンパイラのバグで作った通りに動かねぇんだよ。

942 名前:デフォルトの名無しさん (ワッチョイ f36c-/ZFP) mailto:sage [2016/08/08(月) 00:38:21.48 ID:Sr1mR0u90.net]
OSのドライバのバグで・・・(´・ω・`)

943 名前:デフォルトの名無しさん (ワッチョイ bfcd-82/a) mailto:sage [2016/08/08(月) 01:02:34.45 ID:4zMTW4DS0.net]
>>923
コンパイラはソフトウェアではないのか?w

944 名前:デフォルトの名無しさん (アウアウ Sa47-DOZo) mailto:sage [2016/08/08(月) 05:32:47.31 ID:O+GC8kp4a.net]
顧客の無茶な要求をまとめ上げることが難しい
ときに要求自体が論理的に矛盾していることさえある



945 名前:デフォルトの名無しさん (ワンミングク MM2f-d+5h) mailto:sage [2016/08/08(月) 08:00:31.64 ID:+PEo0tETM.net]
僕、ブルン定数で新しい法則見つけたよ。
→ FDIV BUG発覚

946 名前:デフォルトの名無しさん (ワッチョイ efa6-giu7) [2016/08/08(月) 08:25:43.11 ID:hCZZjSTS0.net]
>>926
ほんこれ

947 名前:デフォルトの名無しさん (ブーイモ MM6f-d+5h) mailto:sage [2016/08/08(月) 22:47:41.60 ID:V6H9Gi+uM.net]
>>920
能力が高いほどプログラミングする機会が少なくなり
底辺プログラマの指揮取りをしてパフォーマンスを発揮しなければいけなくなるところ。

948 名前:デフォルトの名無しさん (ワッチョイ bf02-+Lqe) mailto:sage [2016/08/08(月) 23:21:09.96 ID:7driPpZU0.net]
SIerの常識

949 名前:デフォルトの名無しさん (ワッチョイ f3e7-PVLz) mailto:sage [2016/08/09(火) 05:40:01.21 ID:lg+psraJ0.net]
初見でyukiの2番目とけなかったよぉー。
ネットの必勝法なんか興味ないんじゃ。
素数列挙を真面目にやったのが間違いだったか。。。

950 名前:デフォルトの名無しさん (ワッチョイ 2a8b-GBh+) mailto:sage [2016/08/11(木) 08:07:02.61 ID:/EdBDLFJ0.net]
質問ですが、
Q1. 例外をスローしても呼び出し元で解決できる見込みが無いレベルの事象が
 コンストラクタ内で生じたときどうするのが普通?
 プログラム全体の終了を意図するとして、std::terminate()とstd::abort()ではどっちが弊害が少ないんじゃろうか…
 もしくはより良い別の手段とかあればkwsk

Q2. 汎用ライブラリの設計者が従うべき例外スローのガイドラインとかあったらkwsk
 (std::exception派生クラスのうちで、いつどの例外をスローすべきかとか

951 名前:デフォルトの名無しさん (ワッチョイ 6be7-GBh+) mailto:sage [2016/08/11(木) 08:14:32.72 ID:q7HGPc2n0.net]
コンストラクタで例外投げんな。デストラクタ動かん。
どうしても投げたかったら、メモリとかの面倒も見たうえで投げるんだ。
止めたいなら、俺はターミネートするけど、以下もある。
en.cppreference.com/w/cpp/utility/program/quick_exit
リソース管理がまともなOSなら上で十分。
2は知らん。基本的にロジックエラー投げることが多いけどなぁ。独学だからなぁ。

952 名前:デフォルトの名無しさん (ワッチョイ 2a8b-GBh+) mailto:sage [2016/08/11(木) 08:19:32.10 ID:/EdBDLFJ0.net]
>>933
質問は例外スロー前提ではない(例外をスローしても呼び出し元で解決できる見込みが無いレベルの事象)なのでよろ
コンストラクタで例外をスローするときの挙動と基本的な作法は知ってるし、

953 名前:934 (ワッチョイ 2a8b-GBh+) mailto:sage [2016/08/11(木) 08:23:35.28 ID:/EdBDLFJ0.net]
訂正;
誤: 質問は例外スロー前提ではない
正: Q1は必ずしも例外スロー前提ではない

レスのために打鍵してくれたことには感謝してるチュ(はあと

954 名前:デフォルトの名無しさん (ワッチョイ 6be7-GBh+) mailto:sage [2016/08/11(木) 08:24:18.19 ID:q7HGPc2n0.net]
じゃー識者召喚の儀でも始めるか。
おいでませー。おいでませー。



955 名前:デフォルトの名無しさん (ワッチョイ 66a6-D9eE) [2016/08/11(木) 08:56:56.40 ID:rhLP6Nry0.net]
std::terminateは、std::set_terminateでフックをかませるが
std::abortは、問答無用で即死という違いがあり、
ユーザー定義のterminateの中で最後に使うのがstd::abort
なので通常はterminateを使い、気安くstd::abortを直で使わない

956 名前:デフォルトの名無しさん (ワッチョイ 2a8b-GBh+) mailto:sage [2016/08/11(木) 09:00:42.10 ID:/EdBDLFJ0.net]
スマンQ1は質問の仕方がまずかったかもしれん…
あるクラスFooのコンストラクタで例外が生じたとき、後始末したがっているブツとしては
 (1) Fooの基底クラス
 (2) Fooの初期化済みメンバ
 (3) Foo::Foo()の呼び出し元、そのさらに呼び出し元…
 (4) atexit()系の関数で終了ハンドラを登録した実体
 (5) set_unexpected()で例外ハンドラを登録した実体
というのが有り得ると思うので(他にまだあったりする?)、
コモンセンスなど有り得ない気がしてきた…
(多分汎用ライブラリでは全部手当てすべき(理想)なんだけど、
 特に(2)を完璧にやるにはFooの全メンバをstd::unique_ptr<T>化とか、
 レアケ

957 名前:ースのためにありえない打鍵量を要求される(現実)ので、
 どこまで救って何を切り捨てるのかもFooの設計のうちになりそう?
[]
[ここ壊れてます]

958 名前:デフォルトの名無しさん (ワッチョイ 557b-D9eE) [2016/08/11(木) 09:05:27.91 ID:mUl9HZgb0.net]
>呼び出し元で解決できる見込みが無いレベルの事象
普通に例外投げればいいと思うけど?
例えばオープンしようとしたファイルやデバイスが存在しないとかでエラーになった場合とか
呼び出し側で「解決」はできないけどエラーメッセージやログに残すことはできるだろ。
プログラムの終了なんてアプリの最上位層でやるべきことで下位オブジェクトのコンストラクタで
勝手に終了されたらたまんない

959 名前:デフォルトの名無しさん (ワッチョイ 557b-fheI) [2016/08/11(木) 09:10:34.14 ID:mUl9HZgb0.net]
>>938
>ありえない打鍵量
それが嫌で例外安全にするためにはRAIIを徹底する以外にないんだが

960 名前:デフォルトの名無しさん (ワッチョイ 837b-chrB) [2016/08/11(木) 09:15:11.73 ID:3pXMLcoQ0.net]
書こうと思ったら >>939 に書かれてた
投げっぱなしで十分
そもそもなぜ一つのクラスがアプリケーション全体で何かしらの解決が不可能と判断できるのかが解らない。
そのクラスは構築出来なかったらどんなアプリケーションでも即終了すべき超重要オブジェクトなのか?

961 名前:デフォルトの名無しさん (オッペケ Sr8d-3Vwo) mailto:sage [2016/08/11(木) 09:52:33.91 ID:MxNORS6jr.net]
>>933
>コンストラクタで例外投げんな
これは珍説ですね。
「おいvector、お前コンストラクターで例外投げるなよ」
何かおかしいと思わないのかね

>>938
(2)を達成するのは簡単だ。
何もしなくても言語仕様で保証されている

962 名前:デフォルトの名無しさん (オッペケ Sr8d-3Vwo) mailto:sage [2016/08/11(木) 10:28:39.49 ID:MxNORS6jr.net]
>>941
>なぜ一つのクラスがアプリケーション全体で何かしらの解決が不可能と判断できるのかが解らない

別に有ってもいいだろう。例えばstd::logic_errorをスローする代わりに終了を選んでもおかしくはない。
「バグが有ってプログラマーの意図通りにコンピューターを制御することが出来ていない」状態では
さらにプログラムに従ってエラー処理を行うことは被害を拡大させる恐れがある

963 名前:デフォルトの名無しさん (ワッチョイ 1030-MTuc) mailto:sage [2016/08/11(木) 10:48:27.03 ID:AX8Vy/ox0.net]
コンストラクタで例外投げんな、じゃなくて
コンストラクタで例外投げるときは気をつけろ、だよね?

gotoみたいに、使いこなせれば有用だけど……って言うのとも、ちょっと違う気がする

964 名前:デフォルトの名無しさん (ワッチョイ 837b-chrB) [2016/08/11(木) 11:07:50.42 ID:3pXMLcoQ0.net]
>>943
それだったらterminateでもabortでもなくassert の出番だな



965 名前:デフォルトの名無しさん (ワッチョイ 5acb-yY6c) mailto:sage [2016/08/11(木) 11:35:35.85 ID:ZnWKVyt10.net]
元々の質問者の意図をくみ取れば、この場合は
「スタックトレースかなんかログ吐いて終了〜」
でOKでしょ
復帰の見込みのない実行時エラーが発生したら
終了しとけばよい

966 名前:デフォルトの名無しさん (ワッチョイ 6bc9-3Vwo) mailto:sage [2016/08/11(木) 11:51:01.79 ID:tB9x70x90.net]
どっちでもいい。
「例外にベストプラクティスなし」
この言葉を覚えておくといい。

967 名前:デフォルトの名無しさん (ワッチョイ 3951-yY6c) mailto:sage [2016/08/11(木) 12:39:03.66 ID:M8sBWG1y0.net]
そういう、にっちもさっちもいかなくなった状態というのを上位に伝える手段が確保されて
いなかった頃であればしかたなく自分でexit()というのもあったが、それがC++で例外が
使えるようになったからこそ逆に、例外投げておしまいだと思うがなぁ。

968 名前:デフォルトの名無しさん (ワッチョイ 46cc-3Vwo) mailto:sage [2016/08/11(木) 13:09:46.88 ID:C2OfJDXv0.net]
コンストラクタで例外投げられると new でポインタ得られなくなるからな
メモリリーク起こることも考えられないくらいの馬鹿なんじゃないかと

969 名前:デフォルトの名無しさん (ワッチョイ 557b-fheI) [2016/08/11(木) 13:16:06.73 ID:mUl9HZgb0.net]
本物の馬鹿って自分以外はすべて馬鹿に見えるらしい

970 名前:デフォルトの名無しさん (ワッチョイ 5c33-3Vwo) [2016/08/11(木) 13:21:28.44 ID:V006FGRO0.net]
>>949
えっ?!

971 名前:デフォルトの名無しさん (スップ Sda8-3Vwo) mailto:sage [2016/08/11(木) 13:53:28.45 ID:cZ05OWnFd.net]
関係ないけどnew [] の何番目かのコンストラクタで例外が発生したときの挙動を忘れたな。
最近物忘れがひどいんだ。

972 名前:デフォルトの名無しさん (ワッチョイ 5acb-yY6c) mailto:sage [2016/08/11(木) 13:56:09.93 ID:ZnWKVyt10.net]
ソフトの性質にもよると思うんよ
世の中には絶対にコケることが許されないプログラムもあるだろうけど
質問者の作っているのは多分違う

973 名前:デフォルトの名無しさん (ワッチョイ 837b-chrB) [2016/08/11(木) 14:08:14.32 ID:3pXMLcoQ0.net]
汎用ライブラリって書いてるだろ。
だからライブラリが勝手に判断しないのが正解

974 名前:デフォルトの名無しさん (ワッチョイ 30cf-yY6c) mailto:sage [2016/08/11(木) 15:20:45.11 ID:NtYTAKcg0.net]
>>944
コンストラクタに限らず、例外投げるときに限らず、「RAIIを徹底しろ」のほうが強い。



975 名前:デフォルトの名無しさん (ワッチョイ 612b-xYo4) mailto:sage [2016/08/11(木) 15:55:50.87 ID:Dv16c/hX0.net]
汎用ライブラリなら例外を投げる旨をドキュメンテーションに書いておけば良いだけでは?

976 名前:デフォルトの名無しさん (ワッチョイ 66a6-D9eE) [2016/08/11(木) 17:14:37.14 ID:rhLP6Nry0.net]
noexcept(false)

977 名前:デフォルトの名無しさん (ワッチョイ 435f-H7tx) [2016/08/11(木) 17:52:29.34 ID:QANON0MR0.net]
>>949
馬鹿

978 名前:デフォルトの名無しさん (ワッチョイ 753c-TB/y) [2016/08/11(木) 18:55:15.56 ID:e/GdTSXc0.net]
例外のスレッド間転送までできる時代。

979 名前:デフォルトの名無しさん (オッペケ Sr8d-3Vwo) mailto:sage [2016/08/11(木) 19:01:09.25 ID:MxNORS6jr.net]
むしろエラー処理を確実にするために積極的にコンストラクターで投げるのが真っ当な判断にして標準ライブラリのとった選択。
メモリリークが起きると妄想を続けるのは統合失調症を疑った方がいい

980 名前:デフォルトの名無しさん (ワッチョイ 753c-TB/y) [2016/08/11(木) 19:08:19.39 ID:e/GdTSXc0.net]
エラーをメールで通知する装置で特許とるわ。

981 名前:デフォルトの名無しさん (ワッチョイ 6bc9-3Vwo) mailto:sage [2016/08/11(木) 19:13:01.88 ID:tB9x70x90.net]
例外は色々問題があることが分かってきたから、
そろそろ新しいエラー処理機構を開発するときじゃないのかね

982 名前:デフォルトの名無しさん (ワッチョイ 98cb-MTuc) [2016/08/11(木) 19:23:31.10 ID:zAgYLaXI0.net]
enum class flag : int
{
a = 0b00000001,
b = 0b00000010,
c = 0b00000100,
};

template< typename T > struct hoge
{
using type = std::underlying_type_t<T>;
friend hoge operator |( T a, T b )
{
type val = static_cast<type>( a);
val |= static_cast<type>(b);
return hoge{ val };
}
type val;
};

hoge<flag> a = flag::a | flag::b;

のようにしたいのですが
operator | はどう書けばいいでしょうか

983 名前:デフォルトの名無しさん (ワッチョイ 30cf-yY6c) mailto:sage [2016/08/11(木) 19:26:28.13 ID:NtYTAKcg0.net]
>>962
どんな問題があるって?

984 名前:デフォルトの名無しさん (ワッチョイ 463c-3Vwo) mailto:sage [2016/08/11(木) 20:03:02.69 ID:gnwNFYm10.net]
>>964
>>962 みたいなバカには使いこなせない



985 名前:デフォルトの名無しさん (ワッチョイ 6bc9-3Vwo) mailto:sage [2016/08/11(木) 20:06:46.61 ID:tB9x70x90.net]
Mortrayによると、

・オーバーヘッド
・リソースリークのリスク
 (RAIIやデストラクタでは投げないなど各種プラクティス
  など対応策はあるが、それに頼らなければならない点も問題)
・構文(インデントが増える、変数宣言の場所も合わせないといけない点など)
・言語依存
 (言語によって実装が異なるため、異なる言語のライブラリを
  組み合わせる際に問題になる)
・保守性

などなどが問題点として挙げられている。
無論、旧来のエラーコードなどによる処理も問題はあるので、
それと比べてという意味ではない。

実際、Googleのコーディング規約では(少なくともC++の)例外は使うな、
となっているね。

986 名前:デフォルトの名無しさん (ワッチョイ 5273-mfOa) mailto:sage [2016/08/11(木) 20:39:00.81 ID:QQ8c/kYm0.net]
例外処理の問題点ってC++の仕様が原因だと思う
バカが使うと例外処理で致命的な矛盾不具合を無意識に埋め込める
C++は言語仕様が大きくてフリーダム過ぎる

987 名前:デフォルトの名無しさん (ワッチョイ 612b-xYo4) mailto:sage [2016/08/11(木) 21:15:35.11 ID:Dv16c/hX0.net]
C++は結局高級アセンブリ言語だからプログラマが馬鹿なことするのは止められない
逆に言えば自由を奪わないとも言えるか

988 名前:デフォルトの名無しさん (ワッチョイ 66a6-D9eE) [2016/08/11(木) 22:43:17.08 ID:rhLP6Nry0.net]
C++例外の問題点はインタープリタ的な実装を強いるところ
catch(...)に入っちまった例外の型と値なんかいらねーし
rethrow_with_nestedみたいな中途半端なもんなくても
dynamic_castくらいてめーでやるから
resume nextがなくてそれに近いことやるためにtry{try{try{とかいい加減にしろ

989 名前:デフォルトの名無しさん (ワッチョイ 7017-3Vwo) mailto:sage [2016/08/12(金) 00:25:55.02 ID:IZw9DRlO0.net]
例外でなんでも投げられるのと、標準の例外の使い方がおかしいのが問題

logic_errorとruntime_errorを分けている癖に、標準ライブラリで投げる例外の種類が実態とあっていないとか。

990 名前:デフォルトの名無しさん (オッペケ Sr8d-3Vwo) mailto:sage [2016/08/12(金) 01:17:31.88 ID:JT6YyFbyr.net]
>>963
よくわからんがこんな感じではないだろうか
ideone.com/JU1Zex

991 名前:デフォルトの名無しさん (ワッチョイ 397b-uvTe) mailto:sage [2016/08/12(金) 22:06:18.91 ID:m6KtgNpq0.net]
メモリ管理しなきゃならんのにさらに例外みたいに処理をすっ飛ばすような仕組みを
入れるのは無謀以外のなにものでもない。
例外使うんならガベージコレクションじゃなきゃ辛い。

992 名前:デフォルトの名無しさん (ワッチョイ fc77-3Vwo) mailto:sage [2016/08/13(土) 00:42:46.13 ID:BLnFqe260.net]
開放してから再スローすればいいだろ…

他人のことまで面倒見ようとするから混乱するんだ。

993 名前:デフォルトの名無しさん (ワッチョイ 837b-chrB) [2016/08/13(土) 00:54:44.01 ID:3fEaw1ts0.net]
RAIIって知ってる?

994 名前:デフォルトの名無しさん (アウアウ Sa05-sQ3b) mailto:sage [2016/08/13(土) 05:42:02.48 ID:1v6z5VPia.net]
C++って大いなる『途中』なんだよ。ナウシカの巨神兵をどうにかこうにか早過ぎるまま使いこなそうと無理してる感じの言語



995 名前:デフォルトの名無しさん (ワッチョイ 6be7-GBh+) mailto:sage [2016/08/13(土) 05:44:50.99 ID:amV5ThBe0.net]
今度タプルが言語化するかもなぁ。なかなか楽しみ。

996 名前:デフォルトの名無しさん (ワッチョイ 397b-uvTe) mailto:sage [2016/08/13(土) 08:49:37.69 ID:BR3iMMds0.net]
>>974
そういうふうに作るのが難しいって話だろうに。

997 名前:デフォルトの名無しさん (ワッチョイ 7017-3Vwo) mailto:sage [2016/08/13(土) 10:02:38.31 ID:USGGWD2R0.net]
今時そんなに難しくないよね。

998 名前:デフォルトの名無しさん (ワッチョイ 837b-chrB) [2016/08/13(土) 10:27:20.43 ID:3fEaw1ts0.net]
RAIIが難しいって…

大体gcのある言語でもfinallyとかusingとかtry-with-resouceとか使わないとだめだろ
gcが例外の何の助けになるんだ

999 名前:デフォルトの名無しさん (JP 0H41-dS8u) mailto:sage [2016/08/13(土) 10:30:25.03 ID:gPtVaJGMH.net]
raii は対象リソース1個とか寿命がクロスにならない場合は楽ちんだけど

1000 名前:デフォルトの名無しさん (ワッチョイ 30cf-yY6c) mailto:sage [2016/08/13(土) 11:08:45.48 ID:teR/IlhU0.net]
>>980
複数でもクロスでも変わらんと思うんだが、何が言いたいのかな?

1001 名前:デフォルトの名無しさん (ワッチョイ 6be7-GBh+) mailto:sage [2016/08/13(土) 11:10:13.32 ID:amV5ThBe0.net]
次スレってあるの?

1002 名前:デフォルトの名無しさん (ワッチョイ 6be7-GBh+) mailto:sage [2016/08/13(土) 11:15:10.50 ID:amV5ThBe0.net]
RAIIやるときは、やばそうなリソースは単体でラップしてからクラスに持たせるかなぁ。
基本的に意識しないでもいいように書くけど。

1003 名前:デフォルトの名無しさん (ワッチョイ 6642-MTuc) mailto:sage [2016/08/13(土) 11:19:10.00 ID:NPYsKJkE0.net]
まだ立ててない様なので立ててみます

1004 名前:デフォルトの名無しさん (ワッチョイ 6642-MTuc) mailto:sage [2016/08/13(土) 11:27:12.78 ID:NPYsKJkE0.net]
次スレです

echo.2ch.net/test/read.cgi/tech/1471055085/

ワッチョイ付け損ねました。すんません。(←アホです)



1005 名前:デフォルトの名無しさん (ワッチョイ 463c-3Vwo) mailto:sage [2016/08/13(土) 11:38:45.52 ID:pozD573T0.net]
>>980
それって単にお前の限界ってことだろ

1006 名前:デフォルトの名無しさん (ワッチョイ 557b-fheI) [2016/08/13(土) 12:50:35.53 ID:sDKArTxu0.net]
RAIIの徹底が困難と感じる人はC++なんて触らないほうがいいよ

1007 名前:デフォルトの名無しさん (ワッチョイ 397b-uvTe) mailto:sage [2016/08/13(土) 16:34:41.50 ID:BR3iMMds0.net]
そんなんやるなら別に関数毎に戻り値チェックするのでも苦労は変わらんだろう。

1008 名前:
そんな苦労してまであえて例外投げる作りにする意味が感じられん。
[]
[ここ壊れてます]

1009 名前:デフォルトの名無しさん (ワッチョイ 463c-3Vwo) mailto:sage [2016/08/13(土) 16:43:02.82 ID:pozD573T0.net]
>>988
> 関数毎に戻り値チェックする
例外を全く理解してないのがよくわかる

1010 名前:デフォルトの名無しさん (ワッチョイ 9213-4ddV) mailto:sage [2016/08/13(土) 16:43:44.80 ID:qrOP+l160.net]
>>988
戻り値チェックは何もしないと握りつぶされる
例外は放っておくと最上階まで流れてそこで全体がストップ

1011 名前:デフォルトの名無しさん (ワッチョイ 837b-chrB) [2016/08/13(土) 16:57:39.34 ID:3fEaw1ts0.net]
RAIIが苦労ってどこが?って話なんだけど。
毎回finallyにclose書くほうが100倍めんどくせえし、C#のIDisposableのようなものを使うならデストラクタ書くのも変わらん
C言語のライブラリ使っててそれらの解放面倒って言ってるならJavaとかC#でそれらを使うほうが面倒だし、C++のライブラリだけどRAIIが徹底されてないならそんな糞ライブラリを使うと判断した奴の責任

1012 名前:デフォルトの名無しさん (ワッチョイ 4bb5-3Vwo) mailto:sage [2016/08/13(土) 17:39:26.38 ID:b+WQY3Kz0.net]
C#とJavaは使う側に書き方の作法を要求するが
C++はRAIIさえしときゃ使う側がスッキリ

1013 名前:デフォルトの名無しさん (ワッチョイ 463c-3Vwo) mailto:sage [2016/08/13(土) 17:50:51.29 ID:pozD573T0.net]
>>991
> C#のIDisposable
これはこれでいいんだけどいかんせん後付けの仕組みだから色々徹底されてないのが残念

1014 名前:デフォルトの名無しさん (アウアウ Sa05-sQ3b) mailto:sage [2016/08/13(土) 18:08:11.73 ID:oqaMTJB0a.net]
RAIIってなんて発音するの?
ライー? RAII使いはライヤー?



1015 名前:デフォルトの名無しさん (ワッチョイ 5c33-3Vwo) [2016/08/13(土) 18:10:27.04 ID:hshtSriw0.net]
発音間違えたら嘘つきになりそうだな…

1016 名前:デフォルトの名無しさん (ワッチョイ 66a6-D9eE) [2016/08/13(土) 20:40:02.78 ID:RXynYxKm0.net]
liar!

1017 名前:デフォルトの名無しさん (ガラプー KK41-1kXm) mailto:sage [2016/08/13(土) 21:06:07.63 ID:vXCHTXVpK.net]


1018 名前:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 19a8-MTuc) mailto:sage [2016/08/13(土) 22:06:05.21 ID:zk6Wqji80.net]
>>998 なら長門は俺の嫁

1019 名前:デフォルトの名無しさん (ワッチョイ 2a02-MTuc) mailto:sage [2016/08/14(日) 00:02:50.19 ID:1FuetgAk0.net]
あーるえーあいあい

1020 名前:デフォルトの名無しさん (ワッチョイ 5c33-3Vwo) [2016/08/14(日) 00:35:43.83 ID:a16BwEk80.net]
らららライッ!!!

1021 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






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

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

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