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


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

C++相談室 part124



1 名前:デフォルトの名無しさん(ワッチョイ 7fc9-G+K4) mailto:sage [2016/04/03(日) 00:22:24.07 ID:ZT/2NYWz0.net]
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。

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

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

■長いソースを貼るときはここへ。■
 codepad.org/
 ideone.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

2 名前:デフォルトの名無しさん (ワッチョイ 7fc9-G+K4) mailto:sage [2016/04/03(日) 00:23:36.87 ID:ZT/2NYWz0.net]
[C++ FAQ]
https://isocpp.org/wiki/faq/
www.bohyoh.com/CandCPP/FAQ/ (日本語)

3 名前:デフォルトの名無しさん (ワッチョイ 7fc9-G+K4) mailto:sage [2016/04/03(日) 00:24:40.13 ID:ZT/2NYWz0.net]
STLつかうと一気に実行ファイルサイズが10倍に?!

環境によるだろ。
俺はBorland-C++5.6.2に -D_RTLDLL オプションを指定して、極力
ランタイムを使用するようにして使っているが、例えばstd::vectorを
使っても使わない時と比べ10Kほどしか増えない

すげえ。ダイナミックリンクしといてファイルサイズが増えないとかいってるよ。この人。

C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しまし

4 名前:ス。
とかいうエラーが出るんだけどこれってどうすればいいの?

#include <stdafx.h>
後死ね。

言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。
[]
[ここ壊れてます]

5 名前:デフォルトの名無しさん (ワッチョイ 7fc9-G+K4) mailto:sage [2016/04/03(日) 00:25:56.22 ID:ZT/2NYWz0.net]
---- テンプレ ここまで ----

6 名前:デフォルトの名無しさん (ワッチョイ b742-G+K4) mailto:sage [2016/04/04(月) 01:31:35.53 ID:QWzclXen0.net]
乙。
これは>>1乙じゃなくて\0終端を表すzeroの頭文字なんだからね!

7 名前:デフォルトの名無しさん (ガックシ 0+af-e5NB) [2016/04/04(月) 16:33:22.23 ID:vx7kDnRQ+.net]
template <class T, class U>
auto operator * (const matrix<T>& A, const matrix<U>& B)
-> matrix<decltype( std::declval<T>() * std::declval<U>() )>

ってTがcomplex<float>, Uがcomplex<U>のときにうまくいかないみたい

ttp://stackoverflow.com/questions/16865376/idiomatic-c11-type-promotion
に書いてあることと同じ現象が発生するわ

8 名前:デフォルトの名無しさん (ワッチョイ b7a8-ppXo) [2016/04/04(月) 17:51:25.41 ID:K+tP/W6A0.net]
Uがcomplex<U>
これは無理だろ

9 名前:デフォルトの名無しさん (オッペケ Sref-G+K4) mailto:sage [2016/04/04(月) 19:03:53.18 ID:C11O14/Yr.net]
> decltype( std::declval<T>() * std::declval<U>() )>

代わりにstd::common_type_t<T, U>にしたらいかんの?

10 名前:デフォルトの名無しさん (ワッチョイ b77b-Kvzb) mailto:sage [2016/04/04(月) 19:30:33.08 ID:ogDZeBJL0.net]
>>6
何をやりたいのか勘違いしてるかも知れないけど「Uがcomplex<U>」は書き間違いだとして、
そもそも
complex<double> z1;
complex<float> z2;
z1*z2;
とかは標準のままじゃ出来ないだろ。演算子定義してる?
リンク先の現象とは別のものだと思うけど?



11 名前:デフォルトの名無しさん (jp 0Haf-e5NB) [2016/04/04(月) 20:11:57.58 ID:jBujPHQXH.net]
>>7 >>9
ごめん。complex<U>→complex<double> だった。

template <class T, class U>
std::complex< decltype(std::declval<T>()*std::declval<U>() )>
operator * (const std::complex<T>& z1, const std::complex<U>& z2)
{
return std::complex< decltype(std::declval<T>()*std::declval<U>() )>
(z1.real()*z2.real()-z1.imag()*z2.imag(),
z1.real()*z2.imag()+z1.imag()*z2.real() );
}
は準備してるけど、これがなくてもコンパイル通る。ところが
template <class T> std::complex<T> operator * (int d, const std::complex<T>& z)
{
return std::complex<T>(d*real(z), d*imag(z));
}
がないと、
エラー C2893 関数テンプレート 'matrix<unknown-type> operator *(const U &,const matrix<T> &)' の特定に失敗しました
エラー C2784 'matrix<unknown-type> operator *(const matrix<T> &,const matrix<U> &)':
テンプレート 引数を'const matrix<T> &' に対して 'const std::complex<float>' から減少できませんでした
・・・みたいなのがわんさか出る.

12 名前:デフォルトの名無しさん (jp 0Haf-e5NB) [2016/04/04(月) 20:15:55.07 ID:jBujPHQXH.net]
matrix<float> af(3,3);
matrix<complex<double>> b(3,3);

af*bの演算やると、VC++2015では
警告 C4244 '引数': 'double' から 'int' への変換です。データが失われる可能性があります。 mat_test3 c:\users\ayabe\desktop\mat_test3\mat_test3\matrix_.h 203

がでる.gcc(TDM gcc 5.1.0)では警告すらでずにdoubleからintへの型キャストが起こる。

13 名前:デフォルトの名無しさん (jp 0Haf-e5NB) [2016/04/04(月) 20:31:24.66 ID:jBujPHQXH.net]
template <class T> std::complex<T> operator * (int d, const std::complex<T>& z)
{
return std::complex<T>(d*real(z), d*imag(z));
}
↓訂正
template <class T> std::complex<T> operator * (const std::complex<T>& z, int d)
{
return std::complex<T>(d*real(z), d*imag(z));
}

まあ,decltypeはもう使わないからいいか。お騒がせしました。

14 名前:デフォルトの名無しさん (ワッチョイ b77b-Kvzb) mailto:sage [2016/04/04(月) 20:36:09.73 ID:ogDZeBJL0.net]
>std::complex< decltype(std::declval<T>()*std::declval<U>() )>
これがもうダメだろ。例えばTがcomplex<double>、Uがcomplex<float>なら*の結果の型が定義されていないんだから
VS2015の警告はこれに関しては全く正しいよ

15 名前:デフォルトの名無しさん (jp 0Haf-e5NB) [2016/04/04(月) 20:41:55.46 ID:jBujPHQXH.net]
しかし、何でintなんですか?(デフォルト?)

それと結果の型をどうやって定義するんですか?

MPLかなんか知らんけど、そんなことするくらいならBlitz++を開発した
人のプリプロセッサ命令使うわ

16 名前:デフォルトの名無しさん (ワッチョイ b77b-Kvzb) mailto:sage [2016/04/04(月) 21:04:57.93 ID:ogDZeBJL0.net]
>しかし、何でintなんですか?(デフォルト?)
あなたがそうさせたから

だから標準ではcomplex<double>*complex<float>とか
complex<double>*floatとか、complex<double>*intとかは定義されていないの
そこにあなたがcomplex<T>*intを定義したもんだから
complex<double>*floatがcomplex<double>*intに変換されたてしまったというだけ
型変換ルールは難しいよね
このままC++でプログラミングを続けると躓きまくるパターンだな

17 名前:デフォルトの名無しさん (jp 0Haf-e5NB) [2016/04/04(月) 21:16:48.03 ID:jBujPHQXH.net]
それだけか? 何にも知らないくせに

あんたみたいな奴に上から目線で言われたくない。馬鹿

18 名前:デフォルトの名無しさん (ワッチョイ b77b-Kvzb) mailto:sage [2016/04/04(月) 21:18:22.81 ID:ogDZeBJL0.net]
あーあクソバカの相手して時間の無駄した

19 名前:デフォルトの名無しさん (ワッチョイ 9fa6-eoZT) mailto:sage [2016/04/04(月) 21:36:28.38 ID:aM9lztCf0.net]
通りすがりのアホな自分にも>>15の説明はよくわかる

20 名前:デフォルトの名無しさん (ワッチョイ 6fcc-G+K4) mailto:sage [2016/04/05(火) 14:56:46.43 ID:FzTJXf040.net]
時空のおっさんは虚数空間に居るらしいな



21 名前:デフォルトの名無しさん (ワッチョイ 7c16-QzB1) [2016/04/07(木) 09:40:32.57 ID:sYQgs7of0.net]
てす

22 名前:デフォルトの名無しさん (スプー Sdb8-xmDs) [2016/04/07(木) 11:23:16.83 ID:AC5hJBPJd.net]
大学でプログラミング始めようと思うので機材に関して質問

状況:授業の必修でJavaがあるからなんなら同時進行でC++もやろうと思う
    家に母艦となりうる富士通Esprimoという一体型PCあり
    家との距離や買い物サークルの関係で図書館利用が多いのでノートパソコンでの学習を希望

質問一 どのレベルのノーパソコンだとストレスフリーか?
      できれば住民の使ってるものも教えてもらいたい
質問二 また他の機材はいるか?
質問三 参考書としてどうしても必要なものと入門書について

23 名前:デフォルトの名無しさん (スプー Sdc8-Ixw5) mailto:sage [2016/04/07(木) 11:28:08.01 ID:geZU7+Zhd.net]
VisualStudioスレってないの?

24 名前:デフォルトの名無しさん (ワントンキン MM40-xmDs) mailto:sage [2016/04/07(木) 12:36:54.37 ID:XWAdlud5M.net]
>>21
回答一 最低でも100万円クラスのものが必要となる
回答二 専用キーボードとデバッグ用ディスプレイというものが必須である
    また、オプションではあるがコード解析用RAMがあったほうがよい
回答三 C++のJIS規格書が必要である
    参考書はThe Art of Computer programming、Structure

25 名前:and Interpretation of Computer Programs、Numerical Recipesなどを読むことが望ましい []
[ここ壊れてます]

26 名前:デフォルトの名無しさん (スプー Sdc8-Ixw5) mailto:sage [2016/04/07(木) 12:47:48.05 ID:geZU7+Zhd.net]
JIS規格書

27 名前:デフォルトの名無しさん (ガラプー KK8d-nXV3) mailto:sage [2016/04/07(木) 13:50:27.18 ID:D9AesW8PK.net]
1.今使ってるノーパソがdynabookのi5、4GM、HDD(Amazonで7万くらい)。
完全にストレスフリーではない(eclipse使用時や、VSのインテリセンスの動作速度)が、許容範囲。
SSDモデルであればストレスフリーかと思う。

2.あると便利なのはWindows 7以下のOSと、Linux。
Windowsの方はデバイスロスト対策(8以上は発生しない)の勉強、
Linuxはオーバーランとかのセキュリティの勉強。
(Windowsは例外投げられて止まる。コンパイラオプション無効にしても書き換え後が以前と変わってると無意味だった)

3.ドラフト(規格の草案)がgithubにあって無料。
『プログラミング言語C++第4版』、『C++のためのAPIデザイン』、『effective modern C++』、『C++テンプレートテクニック 第2版』
第4版は必須。

あと>>23死んでくれ

28 名前:デフォルトの名無しさん (JP 0H8d-90FX) mailto:sage [2016/04/07(木) 14:37:39.73 ID:/RqFI3WhH.net]
でも JavaとC++を並行でやるのはダメ、ゼッタイ
表面上似ているからかえって混同してどっちも使いものにならないよ

29 名前:デフォルトの名無しさん (ワッチョイ 7c7b-N9sV) mailto:sage [2016/04/07(木) 14:43:04.17 ID:qpo8uFCK0.net]
職業プログラマになるつもりなら早いうちから複数言語を並列でやることに慣れていたほうが良いと思うけど。
どちかに固まってしまうほうがまずい。

30 名前:デフォルトの名無しさん (ワッチョイ 7c16-QzB1) [2016/04/07(木) 14:51:19.83 ID:sYQgs7of0.net]
>>21

1.
CPUはCore-i5程度でおつりがくる。ATOMでもclangやgccは使える。
RAMは2Gあれば充分。
HDDは250GBあれば充分。
モニタの解像度は予算が許す限りの最大。狭い画面では思考まで狭くつぶされてしまう。
OSはWindowsでよいが、Linuxならモアベター。

2.
プリンタ。
実にくだらんことだが、プログラムはただ紙に印刷してみるだけで、モニタでは気付けなかったことがわかるからだ。(そして、そのあと決まって紙を無駄遣いしたと思う)
ついつい生活用を兼ねてインクジェットが欲しくなるかも知れんが、プログラム用にはモノクロレーザーがよい。プログラム自体に色はついていないし、レーザーは乾燥させなくてよく、トナーがインクより日持ちする。

3.
・必要
プログラム言語C++第4版 ISBN-13: 978-4797375954
ISO/IEC 14882:2014

・入門書
ストラウストラップのプログラミング入門 ISBN-13: 978-4798119595



31 名前:デフォルトの名無しさん (ワッチョイ 7c7b-N9sV) mailto:sage [2016/04/07(木) 15:00:08.34 ID:qpo8uFCK0.net]
プリンタ依存も避けたほうが良いと思うけどね。紙だと横幅の問題もあるし。
それに俺が使ってるエディタ上では色ついてるし。

32 名前:デフォルトの名無しさん (スプー Sdb8-xmDs) [2016/04/07(木) 15:09:43.34 ID:QhAHKtTed.net]
参考になりました
ありがとうございます

33 名前:デフォルトの名無しさん (ワッチョイ 9dcb-sG86) [2016/04/07(木) 17:11:02.42 ID:8Ibgsdhs0.net]
gcc6でconceptが使えるようになってんね

34 名前:デフォルトの名無しさん (JP 0H8d-90FX) mailto:sage [2016/04/07(木) 20:52:38.47 ID:/RqFI3WhH.net]


35 名前:>>27
夢見すぎ
独学でどっちか片方それなりにでも身についてれば御の字
[]
[ここ壊れてます]

36 名前:デフォルトの名無しさん (ワッチョイ 7c16-QzB1) [2016/04/07(木) 21:12:54.17 ID:sYQgs7of0.net]
俺なんかBASICとマシン語を並列で憶えたぞ
マシン語もZ80と6800を並列で(当時の俺にとって2つの別言語)
N-BASICとF-BASICと大型のBASICも脳の別領域を使ってたし

37 名前:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 95a8-j/+h) mailto:sage [2016/04/07(木) 21:20:11.88 ID:DadLuQug0.net]
>>23
JIS の C++ は C++03 だぞ。

38 名前:デフォルトの名無しさん (ワッチョイ 7c16-QzB1) [2016/04/07(木) 21:36:31.97 ID:sYQgs7of0.net]
志村〜後ろ後ろ、かw

39 名前:デフォルトの名無しさん (ブーイモ MM8d-xmDs) mailto:sage [2016/04/07(木) 23:00:34.69 ID:KjNJiL53M.net]
>>28
うちのプロジェクト500万ステップオーバーなんだけど、どうか印刷しないでくれよな。

40 名前:デフォルトの名無しさん (ワッチョイ 7c16-QzB1) [2016/04/07(木) 23:11:01.88 ID:sYQgs7of0.net]
SYSABENDみたいなことはそうそうしないから安心してくれ



41 名前:デフォルトの名無しさん (ワッチョイ 74d4-+kqq) mailto:sage [2016/04/07(木) 23:28:30.78 ID:EsZr6lr20.net]
32bitOSで使用してたアプリを64bitOSに移して、
time_tで日付表示しようとすると全然違う日付になるんだけど、
long型の宣言を何に変えればいいんでしょうか

42 名前:デフォルトの名無しさん (ワンミングク MM40-m9JC) [2016/04/07(木) 23:32:49.64 ID:s1RKY7ZgM.net]
>>38
time_t型

43 名前:デフォルトの名無しさん (オッペケ Sr29-xmDs) mailto:sage [2016/04/07(木) 23:54:11.99 ID:OOVH0iNWr.net]
変えなくてはいけないコードがそもそもおかしくね?

44 名前:デフォルトの名無しさん (ワッチョイ 3d7b-m9JC) [2016/04/08(金) 00:13:14.18 ID:tJM0u/og0.net]
>>40
何を当たり前の事を仰ってるのでしょうか

45 名前:デフォルトの名無しさん (ワッチョイ 7f7b-DytT) mailto:sage [2016/04/08(金) 13:25:37.92 ID:nRvqcDPq0.net]
char, wchar_t, short, int, long, lomg long, intptr_t, ptrdiff_t, size_t, off_t, time_t
符合有無
を正しく使い分けなきゃならない

46 名前:デフォルトの名無しさん (オッペケ Sr29-xmDs) mailto:sage [2016/04/08(金) 19:57:04.15 ID:BVnlFcaMr.net]
off_tは知らないけど
それは全部区別ついてないとだめだろ

47 名前:デフォルトの名無しさん (ワッチョイ f68b-vY2k) mailto:sage [2016/04/08(金) 22:08:41.94 ID:WlvNU3n40.net]
size_tは符号無し、ptrdiff_t、int、long、long longは符号付き、ということが確定じゃなかったっけ
違ったっけ

charが符号付か否かは処理系依存
ただし表示可能文字(isprint()が非0を返す文字)は正であることはC言語の規格で決まっている、

48 名前:デフォルトの名無しさん (ワッチョイ fac9-xmDs) mailto:sage [2016/04/09(土) 00:37:51.56 ID:0tLp+Ivi0.net]
ここはC++スレだがそんな決まりは初耳だ

49 名前:デフォルトの名無しさん (ワッチョイ bbce-xmDs) mailto:sage [2016/04/09(土) 18:54:14.11 ID:ALj0g4vo0.net]
ssize_t が無いのが微妙に不便。

50 名前:デフォルトの名無しさん (オッペケ Sr29-xmDs) mailto:sage [2016/04/10(日) 10:27:04.69 ID:y7qpDauWr.net]
むしろsize_tは符号付きにするべきだった



51 名前:デフォルトの名無しさん (ワッチョイ 9d53-QzB1) [2016/04/10(日) 23:05:48.42 ID:DxYgjy+n0.net]
なんで?
ptrdiff_tの話を間違った?

52 名前:デフォルトの名無しさん (ワッチョイ fac9-xmDs) mailto:sage [2016/04/10(日) 23:40:34.03 ID:XJxT0yj80.net]
intとの比較でいちいち警告出されたらたまらん

53 名前:デフォルトの名無しさん (ブーイモ MM8d-xmDs) mailto:sage [2016/04/11(月) 12:18:23.22 ID:0MIRpDyTM.net]
そもそもサイズは一般的にはマイナスの概念も含むものじゃないかと思う。

54 名前:デフォルトの名無しさん (スプー Sdb8-xmDs) [2016/04/11(月) 12:21:40.37 ID:I1gJlU3cd.net]
unsignedが出現するとイライラする

55 名前:デフォルトの名無しさん (ワッチョイ 7c36-QzB1) [2016/04/11(月) 16:45:35.21 ID:uv6GH2mg0.net]
>>49
それはコンパイラの問題であって、規格に文句を言うのはお門違いってやつだ
規格合致プログラムなのに難癖つける余計なお節介が邪魔なら、
それをやめさせる方法を探すか、窓から投げ捨てるかは、おまえ自身の問題だし

56 名前:デフォルトの名無しさん (ワッチョイ 7f7b-DytT) mailto:sage [2016/04/11(月) 18:25:06.27 ID:cJbV017h0.net]
>>52
お前バカだろう。>>42を正しく使い分けるためにコンパイラにチェックさせるんだよ。

57 名前:デフォルトの名無しさん (ガラプー KKbf-nXV3) mailto:sage [2016/04/11(月) 19:31:17.66 ID:RH3X14PwK.net]
「サイズがマイナスの概念を持つもの」はさすがに。
詳しくは知らないけど測度論?でもやってんのかと言いたい。
バナッハ・タルスキのあれな。
現実には存在しえないだろ負値。

58 名前:デフォルトの名無しさん (ワッチョイ 88cb-j/+h) [2016/04/11(月) 20:14:37.61 ID:F0n0MoRl0.net]
存在し得ない値を表すのにマイナスが欲しい

59 名前:デフォルトの名無しさん (アウアウ Sac1-L6fk) mailto:sage [2016/04/11(月) 20:26:21.31 ID:Whc/9IOHa.net]
HaskellのMaybeみたいなデータ構造があればいい
あとは効率次第

60 名前:デフォルトの名無しさん (スプー Sdb8-xmDs) mailto:sage [2016/04/11(月) 20:46:28.59 ID:liIxp6L/d.net]
>>54
バナタルは測度が定義できない部分集合に分解



61 名前:デフォルトの名無しさん (ワッチョイ fe98-QzB1) [2016/04/11(月) 22:15:52.94 ID:DS0BshJK0.net]
>>53
正しく使い分けるを定義しろ
いちいち明示的にキャストすることか
それとも変換も昇格も一切使わないことか

62 名前:デフォルトの名無しさん (ワントンキン MM40-xmDs) mailto:sage [2016/04/11(月) 22:20:20.19 ID:t8dajl0XM.net]
struct ssize_t { bool _sign; std::size_t _val};

63 名前:デフォルトの名無しさん (オッペケ Sr29-SddS) mailto:sage [2016/04/11(月) 22:41:24.20 ID:+GeXodTxr.net]
>>52
コンパイラーは意図があって警告を出してるのであって
その意図に照らし合わせて規格がこうあるべきだったと言っているのに、
規格通りなら文句言うなとか、アスペなの?

64 名前:デフォルトの名無しさん (アウアウ Sac1-L6fk) mailto:sage [2016/04/11(月) 23:05:12.91 ID:Whc/9IOHa.net]
『アスペルガー障害なの?』っていう侮蔑用語、そろそろ卒業しような。

65 名前:デフォルトの名無しさん (ワッチョイ e042-j/+h) mailto:sage [2016/04/11(月) 23:07:04.91 ID:4BrCfwua0.net]
覚えたばかりで使いたい年頃

66 名前:デフォルトの名無しさん (ワッチョイ a030-j/+h) mailto:sage [2016/04/11(月) 23:19:25.81 ID:x/V8tc7c0.net]
>>61
アスペ全然関係ねぇだろって状況でしか
使われるの見たことないなそういやw

67 名前:デフォルトの名無しさん (ワッチョイ 413c-SddS) mailto:sage [2016/04/12(火) 00:26:59.20 ID:0UTgzyp30.net]
>>63
アスペ

68 名前:デフォルトの名無しさん (ワッチョイ 7f7b-DytT) mailto:sage [2016/04/12(火) 01:17:31.61 ID:sQLQIwRw0.net]
>>58
定義してもらわなきゃわからない素人は引っ込んでようね

69 名前:デフォルトの名無しさん (ドコグロ MM1c-SddS) mailto:sage [2016/04/12(火) 08:30:13.78 ID:xYAotuK9M.net]
>>55
C脳の老害はそろそろ引退しろよ

70 名前:デフォルトの名無しさん (ワッチョイ 9da8-QzB1) [2016/04/12(火) 08:42:37.79 ID:xvAFE9Om0.net]
>>65
定義できないんだろ?
自分の主張をきちんと整理できないのは
素人以前に論客としての基本ができてないんだよ
恥を知ろうね



71 名前:デフォルトの名無しさん (オッペケ Sr29-SddS) mailto:sage [2016/04/12(火) 18:30:33.78 ID:Pt+c78dMr.net]
最終的なサイズは0以上でも、サイズを計算する過程で
intを使った演算をしたいことはある。
キャストしなきゃいけないのは流石に不便

72 名前:デフォルトの名無しさん (ガラプー KKbf-nXV3) mailto:sage [2016/04/12(火) 20:26:27.00 ID:EvPGf+vtK.net]
シフト演算や未定義動作の関係で、unsignedにすることはあるけど逆はないなぁ
具体的にどんな操作ですか?

73 名前:デフォルトの名無しさん (ワッチョイ 7f7b-DytT) [2016/04/13(水) 00:00:27.02 ID:z3tTaqtH0.net]
>>67
そんなに教えて欲しいのか?
添削してやるから定義してみな。

74 名前:デフォルトの名無しさん (ワッチョイ 9da8-QzB1) [2016/04/13(水) 00:28:53.46 ID:CqRnSqIY0.net]
>>70
定義するのはおまえだよ
小学生以下のすり替えしてんじゃねえ

つーか誰が何を主張してるのか整理できない
掛け値なし小学生以下の論客くずれじゃしゃーねーかw

75 名前:デフォルトの名無しさん (ワッチョイ d37b-pOi2) [2016/04/14(木) 03:08:20.77 ID:PjjDqAVF0.net]
>>71
教えをこう時は「お願いいたします」と頭を下げるのが、小学生でも知ってる常識だ
バカめ

76 名前:デフォルトの名無しさん (アウアウ Sa67-rJyw) mailto:sage [2016/04/14(木) 03:47:34.18 ID:/Il1GiFba.net]
パンパカパ〜ン

77 名前:デフォルトの名無しさん (ワッチョイ 7bb4-w4ft) mailto:sage [2016/04/14(木) 13:08:33.42 ID:bhJKkgbs0.net]
もし一週間後にこの世から C++ が消滅するとして、
お前らはどの言語にいくの?
D? Rust?

78 名前:デフォルトの名無しさん (ワッチョイ db38-TaqW) mailto:sage [2016/04/14(木) 13:11:50.21 ID:rJmmubWG0.net]
>>74
JavaScriptに逃げます

79 名前:デフォルトの名無しさん (ワッチョイ 27a8-q6hj) [2016/04/14(木) 13:18:07.01 ID:/lkdV6bx0.net]
>>72
おまえに教えを請うバカは全宇宙に1人もいねーよど低脳

おまえの主張が俺に伝わらなくて困るのはおまえだろ
俺にとって顔も知らん池沼のあうあうあーが意味わかんなくても当たり前だし

80 名前:デフォルトの名無しさん (ブーイモ MM2f-Gtsw) mailto:sage [2016/04/14(木) 13:30:04.13 ID:RrIZ4ynPM.net]
関数にexternを付ける意味って何ですか?
普通、外部リンケージの関数を使うときはプロトタイプ宣言をすればすむ話ですよね



81 名前:デフォルトの名無しさん (ブーイモ MM2f-Gtsw) mailto:sage [2016/04/14(木) 13:38:38.96 ID:EGbMBKF8M.net]
extern cを付けるなら意味あるよ

82 名前:デフォルトの名無しさん (ワッチョイ 7bb4-w4ft) mailto:sage [2016/04/14(木) 14:18:48.75 ID:OJhwzOCe0.net]
俗語として、"A" は接吻、"B"はペッティング、"C" は性器同士の接触を伴う性行為、すなわちセックスである
一方で C++ において extern 修飾子はそれを外部に公開することを示す

したがって extern "C" とは

83 名前:デフォルトの名無しさん (スプー Sd2f-Gtsw) mailto:sage [2016/04/14(木) 14:48:57.71 ID:r/b7CawPd.net]
エクスタシー

84 名前:デフォルトの名無しさん (ブーイモ MM2f-Gtsw) mailto:sage [2016/04/14(木) 15:46:36.79 ID:RrIZ4ynPM.net]
>>78
それはそうですが、externだけの場合の話です

>>79
感心しました。C#もお願いします

85 名前:デフォルトの名無しさん (ワッチョイ 6fcc-Gtsw) mailto:sage [2016/04/14(木) 16:05:37.53 ID:Bx+gDZ8M0.net]
extern+関数は関数内部で未定義の外部参照関数を一時的に宣言したりする場合に使う

86 名前:デフォルトの名無しさん (ワッチョイ 6ba8-Jz3o) mailto:sage [2016/04/14(木) 16:21:43.87 ID:LtT4shjO0.net]
>>74
Rust で C++ コンパイラの開発を試みます。

87 名前:デフォルトの名無しさん (ブーイモ MM2f-Gtsw) mailto:sage [2016/04/14(木) 16:51:00.65 ID:RrIZ4ynPM.net]
>>82
プロトタイプ宣言との違いが分かりません
すみませんが例を示していただけないでしょうか?

88 名前:デフォルトの名無しさん (ワッチョイ 6fcc-Gtsw) mailto:sage [2016/04/14(木) 17:34:52.06 ID:Bx+gDZ8M0.net]
関数内部でプロトタイプと同じ書き方してみろよ
extern記述しないとできないから

89 名前:デフォルトの名無しさん (スプー Sdaf-VZXL) [2016/04/14(木) 17:41:13.29 ID:tV4LbGhWd.net]
デキタァ…

90 名前:デフォルトの名無しさん (ワッチョイ 4bdc-WXps) mailto:sage [2016/04/14(木) 17:51:08.75 ID:Y6Qtie590.net]
C++では外部関数を宣言する時のexternは省略可能じゃなかったっけ?
付けても害はないし、つけなくても意味は同じ。

古いCとの互換性とかで残ってるんだと思ったが、
Cにおいても「externなしだと曖昧になる場面」てのが思い浮かばない。


g++ では関数内での外部関数宣言もexternなしで通ったよ。



91 名前:デフォルトの名無しさん (ワッチョイ 6fcc-Gtsw) mailto:sage [2016/04/14(木) 17:55:10.24 ID:Bx+gDZ8M0.net]
ま、今は色々仕様が確定してきてそこら辺ユルユルになってきているけどな

92 名前:デフォルトの名無しさん (ワッチョイ 6fcc-Gtsw) mailto:sage [2016/04/14(木) 17:56:53.73 ID:Bx+gDZ8M0.net]
昔は関数の内部に構造体書いたり関数の宣言とか出来なかったんだぜ

93 名前:デフォルトの名無しさん (ワッチョイ 4bdc-WXps) mailto:sage [2016/04/14(木) 20:24:15.71 ID:Y6Qtie590.net]
そういえば下のような感じで、外部関数のプロトタイプ宣言と
引数型の簡単な変換のインライン定義とを並べて書くときに…

namespace SomeSpace {
 extern bool some_condition_check(const char* str);
 inline bool some_condition_check(const std::string& str) {return str.c_str();}

 bool another_condition_check(const char* str);
 inline bool another_condition_check(const std::string& str) {return str.c_str();}
}

externを書いておくと関数名がきれいに縦に並んでちょっと見やすくなる
という効用があるね。"extern" と "inline" の字数が同じだから。

94 名前:デフォルトの名無しさん (ワッチョイ 5f13-mNwz) mailto:sage [2016/04/14(木) 20:43:24.46 ID:f1hhftJp0.net]
>>89
へえ‥今は関数の内部に構造体の定義が書けるんだ‥新鮮だね

95 名前:デフォルトの名無しさん (JP 0H07-DByn) mailto:sage [2016/04/14(木) 21:23:16.59 ID:BY7gxQ6DH.net]
関数内関数は return 有無の見間違えとか面倒くさいから嫌い

96 名前:デフォルトの名無しさん (ワッチョイ a742-VZXL) mailto:sage [2016/04/14(木) 21:30:57.47 ID:4DxPT4rq0.net]
>>92
lambdaもだめか

97 名前:デフォルトの名無しさん (オッペケ Sr27-Gtsw) mailto:sage [2016/04/14(木) 21:43:18.93 ID:sprOrblAr.net]
>>85>>86の流れにワロタ

98 名前:デフォルトの名無しさん (ワッチョイ 27a8-q6hj) [2016/04/14(木) 22:38:49.39 ID:/lkdV6bx0.net]
staticな関数原型と衝突したことを検出するために
自分の関数原型と関数定義をexternにするとか?
今となってはD組の話、とタカをくくると思わぬところで足をすくわれる

# 死刑執行がおせーんだよ >WG21

99 名前:デフォルトの名無しさん (ワンミングク MMef-8wQM) [2016/04/15(金) 00:42:56.90 ID:MuKGbCphM.net]
asioはいつ標準に入るんだ

100 名前:デフォルトの名無しさん (ワッチョイ b763-Gtsw) mailto:sage [2016/04/15(金) 08:37:52.62 ID:wcmNmqit0.net]
static void f();
extern void f();

一体何を検知したいのか



101 名前:デフォルトの名無しさん (ブーイモ MM2f-Gtsw) mailto:sage [2016/04/15(金) 15:29:12.25 ID:wsA6y7yQM.net]
>>87
自分もそう理解してました

実はコードはC++でなくCなのですが、まぁそこは同じですよね
NASA、エアバス、ボーイングなどが参画してる某OSSなんですが、
あまり洗練されたコードじゃないので深く意味を考えないほうがいいかも






[ 続きを読む ] / [ 携帯版 ]

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

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