エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
◆ソースのインデントについて
半角空白やTABでのインデントはスレに貼ると無くなります。
そのため、アップローダーに上げるのも手ですが直接貼る場合は、
全角空白か に置換すると見栄えだけはよくなります。
【アップローダー】(質問が長い時はココ使うと便利)
http://codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック)
http://ideone.com/ (時間帯によってはcodepadが重い事があるのでここも利用)
前スレ
【初心者歓迎】C/C++室 Ver.99【環境依存OK】
http://echo.2ch.net/test/read.cgi/tech/1469177649/
探検
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2016/11/06(日) 22:58:02.60ID:dU5z27As
453デフォルトの名無しさん
2017/02/20(月) 01:05:36.35ID:aWzwD2VT >>452
ピタゴラスイッチでバブルソートやクイックソートの概念をグラフィカルに紹介してたよ。
それはさておき、本屋の店頭でアルゴリズムとかデータ構造とかがタイトルに含まれる本をパラパラめくって分かり易いのを探すといいかと思う。
ピタゴラスイッチでバブルソートやクイックソートの概念をグラフィカルに紹介してたよ。
それはさておき、本屋の店頭でアルゴリズムとかデータ構造とかがタイトルに含まれる本をパラパラめくって分かり易いのを探すといいかと思う。
454デフォルトの名無しさん
2017/02/21(火) 00:15:43.57ID:OFTvUoLj とあるOSSをとあるシステムに移植していて、
Intel(2013)やGNU(4.9系)ではコンパイルできるのに
そのシステム専用コンパイラではコンパイルできずエラーになります。
ソースコードやヘッダファイルを修正すれば通るだろうというのは経験的にわかっているのですが
どこを修正したらよいかというのを見つけ方がわからないのですが見つけ方のコツみたいなのはあるのでしょうか?
Intel(2013)やGNU(4.9系)ではコンパイルできるのに
そのシステム専用コンパイラではコンパイルできずエラーになります。
ソースコードやヘッダファイルを修正すれば通るだろうというのは経験的にわかっているのですが
どこを修正したらよいかというのを見つけ方がわからないのですが見つけ方のコツみたいなのはあるのでしょうか?
455デフォルトの名無しさん
2017/02/21(火) 00:32:08.81ID:fcoMqi2n エラーメッセージの意味を考えろ
456デフォルトの名無しさん
2017/02/21(火) 01:18:37.30ID:9fQxfYbZ >>454
エラーメッセージを見ないことには回答のしようがないと思うぞ
まぁ、専用のコンパイラという言い回しから察するに、C++03程度しかサポートしていない古いコンパイラでも使ってるんじゃないか?
エラーが出ている行の周辺でC++11以降の言語機能か、ライブラリでも使ってんじゃね?
エラーメッセージを見ないことには回答のしようがないと思うぞ
まぁ、専用のコンパイラという言い回しから察するに、C++03程度しかサポートしていない古いコンパイラでも使ってるんじゃないか?
エラーが出ている行の周辺でC++11以降の言語機能か、ライブラリでも使ってんじゃね?
457デフォルトの名無しさん
2017/02/21(火) 01:18:57.64ID:bFUDo/lz >>454
ともかく、
そのシステム専用コンパイラ提供しているところに、世界標準のIntel(2013)やGNU(4.9系)ではコンパイル
出来るのにお前のものではできないから出来るようにしたコンパイラをよこせと激しくクレーム
ともかく、
そのシステム専用コンパイラ提供しているところに、世界標準のIntel(2013)やGNU(4.9系)ではコンパイル
出来るのにお前のものではできないから出来るようにしたコンパイラをよこせと激しくクレーム
458デフォルトの名無しさん
2017/02/21(火) 01:32:37.44ID:bFUDo/lz >>456
C++11いっぱいのコードをC++03に修正するって大変そうだな
C++11いっぱいのコードをC++03に修正するって大変そうだな
459デフォルトの名無しさん
2017/02/21(火) 06:31:57.51ID:OFTvUoLj460デフォルトの名無しさん
2017/02/21(火) 08:12:09.46ID:9fQxfYbZ461デフォルトの名無しさん
2017/02/21(火) 15:33:32.84ID:rWOcc73c 一般論としてどういうことに注意したらいいですかって質問じゃなくて、具体的に解決してもらいたいってことなのかよw
462デフォルトの名無しさん
2017/02/21(火) 22:19:07.17ID:OFTvUoLj463デフォルトの名無しさん
2017/02/21(火) 22:24:52.45ID:qEEiXXQS HOGEの中にHAGEが紛れ込んでるんだな
464デフォルトの名無しさん
2017/02/22(水) 07:28:41.35ID:F7TE97aZ465デフォルトの名無しさん
2017/02/22(水) 11:11:49.24ID:T1tKwjPz >>459
テンプレートが悪さしてるか const の取りこぼしかデフォルト引数のミスが起きているとエスパー
テンプレートが悪さしてるか const の取りこぼしかデフォルト引数のミスが起きているとエスパー
466デフォルトの名無しさん
2017/02/22(水) 19:03:10.40ID:7bpb3LbA printf("%s",buf);
と
fputs(buf,stdout);
どっちが好き?
と
fputs(buf,stdout);
どっちが好き?
467デフォルトの名無しさん
2017/02/22(水) 19:20:15.64ID:JmFr9wbV 違う処理のコードを並べてどっちと言われても
468デフォルトの名無しさん
2017/02/22(水) 19:49:35.49ID:OuXxGo6B >>467みたいな人が居るのでprintfかな
469デフォルトの名無しさん
2017/02/22(水) 20:00:39.94ID:G8P7P0/x どっちも最後に使ったの20年ほど前かな
470デフォルトの名無しさん
2017/02/22(水) 21:09:01.14ID:T1tKwjPz puts とか使ったことないわ
471デフォルトの名無しさん
2017/02/22(水) 21:30:22.88ID:Z0Pf8P/J >>469
ログ出力・エラー出力がメインでstdoutはあんまり使わないよな
ログ出力・エラー出力がメインでstdoutはあんまり使わないよな
472デフォルトの名無しさん
2017/02/22(水) 21:36:43.56ID:3nEefUGO putsは改行してくれるんで好きだな。fputsも。
474デフォルトの名無しさん
2017/02/22(水) 21:51:09.45ID:3nEefUGO >>473
あ そうだった。 すまん
あ そうだった。 すまん
475デフォルトの名無しさん
2017/02/23(木) 00:12:45.93ID:oHheANLP 細かいのを大量に出したいときはprintfは遅い
476デフォルトの名無しさん
2017/02/23(木) 18:17:55.29ID:2nyak89s class CL{
CL(int _d, string _s) : d(_d), s(_s)
{
}
public:
int d;
string s;
};
int _tmain(int argc, _TCHAR* argv[])
{
CL *cl = new CL(555, "a");←ここでエラー。なんで?
CL(int _d, string _s) : d(_d), s(_s)
{
}
public:
int d;
string s;
};
int _tmain(int argc, _TCHAR* argv[])
{
CL *cl = new CL(555, "a");←ここでエラー。なんで?
477デフォルトの名無しさん
2017/02/23(木) 18:23:14.57ID:sZtROie8 >>476
こんすとらくたがprivateだから
こんすとらくたがprivateだから
478デフォルトの名無しさん
2017/02/23(木) 18:23:56.57ID:2nyak89s そういうことかあ
あざす
あざす
479デフォルトの名無しさん
2017/02/23(木) 21:15:37.70ID:JF3nU8GT 生成出来ないクラスってやつね。
480デフォルトの名無しさん
2017/02/23(木) 21:50:10.15ID:33+Wu0JT >>479
friend なクラスからしか生成しないようにするとかはあるね
friend なクラスからしか生成しないようにするとかはあるね
481デフォルトの名無しさん
2017/02/23(木) 21:52:15.77ID:JF3nU8GT はい そゆ事。
482デフォルトの名無しさん
2017/02/23(木) 21:53:15.53ID:0FbQfq3V staticメソッドで生成するって形の時に使うことが多い
singletonとか
singletonとか
483デフォルトの名無しさん
2017/02/23(木) 22:20:39.38ID:v0zRNZ3l ctorはpri.でメンバーはpub.って
どういうことなんだ?
どういうことなんだ?
484デフォルトの名無しさん
2017/02/23(木) 22:26:42.14ID:I6Uc1mEc 一つ前のレスも読めない文盲
485デフォルトの名無しさん
2017/02/23(木) 22:44:21.27ID:SD8t1ALL 質問
C/C++でランタイムで現在のメモリの状態
とくにプロセスが使える余っているメモリの量って調べ方はありますか?
C/C++でランタイムで現在のメモリの状態
とくにプロセスが使える余っているメモリの量って調べ方はありますか?
486デフォルトの名無しさん
2017/02/24(金) 08:45:12.70ID:SswDvM4l 環境すら書かないと言うことは
(実質)環境非依存での方法を聞いてるんだろうな?
(実質)環境非依存での方法を聞いてるんだろうな?
487デフォルトの名無しさん
2017/02/24(金) 08:54:02.15ID:See/JzpM そんなもん無いけどな
488デフォルトの名無しさん
2017/02/24(金) 09:53:13.79ID:0sr6h+Re 失敗するまでmallocやnewを繰り返せばええんや
489デフォルトの名無しさん
2017/02/24(金) 10:43:32.63ID:See/JzpM >>488
Linuxじゃ失敗しないよ
Linuxじゃ失敗しないよ
490デフォルトの名無しさん
2017/02/24(金) 10:53:37.11ID:See/JzpM もたろん割り当てるアドレス空間自体が足りなくなったとか、予め上限を設定しておいたとかいうケースは覗いてな
491デフォルトの名無しさん
2017/02/24(金) 11:09:14.16ID:9xRtAprE 16byteのメモリを積んだコンピュータで32byteのメモリ確保したら失敗するよね。
それはわかる。
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
それはわかる。
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
492デフォルトの名無しさん
2017/02/24(金) 11:41:21.86ID:KhjrQy0g 基本的にでっかくメモリ確保というプログラムは作った事がないな。
今はSTLでほげほげ追加してくイメージ。
今はSTLでほげほげ追加してくイメージ。
493デフォルトの名無しさん
2017/02/24(金) 11:47:17.85ID:See/JzpM >>491
>16byteのメモリを積んだコンピュータで32byteのメモリ確保したら失敗するよね。
そうとは限らない。一般的なLnuxの環境依存ではmallocを搭載メモリ以上行っても失敗しない
swap含めて1GBしか積んでいない環境で2GB分malloc可能。確保した領域に書き込んだタイミングで記憶する領域が足りなくなったら色々なプロセスが殺される。oom killerと言われてるもの。
>
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
実装による。現代的なコンピューターではページ単位(4KB)とかでカーネルからプロセスへすきなアドレスへメモリを割り当てられるから物理的なアドレスが連続している必要はない。
プロセス内に連続したアドレス空間が残っていない場合は失敗する
>16byteのメモリを積んだコンピュータで32byteのメモリ確保したら失敗するよね。
そうとは限らない。一般的なLnuxの環境依存ではmallocを搭載メモリ以上行っても失敗しない
swap含めて1GBしか積んでいない環境で2GB分malloc可能。確保した領域に書き込んだタイミングで記憶する領域が足りなくなったら色々なプロセスが殺される。oom killerと言われてるもの。
>
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
実装による。現代的なコンピューターではページ単位(4KB)とかでカーネルからプロセスへすきなアドレスへメモリを割り当てられるから物理的なアドレスが連続している必要はない。
プロセス内に連続したアドレス空間が残っていない場合は失敗する
494デフォルトの名無しさん
2017/02/24(金) 11:52:16.13ID:NAh96dM2 仮想メモリというしくみで色々やってくれるようになって
キャパの限界付近ではややこしくなった印象
キャパの限界付近ではややこしくなった印象
495デフォルトの名無しさん
2017/02/24(金) 12:48:55.46ID:KhjrQy0g 家鯖は6G積んでるけどそれぐらいは行けるね。
てかkvmやってると、9Gコミットされてるもん。
てかkvmやってると、9Gコミットされてるもん。
496デフォルトの名無しさん
2017/02/24(金) 15:10:06.50ID:CcmE3pWB >>488
それスワップエリアのサイズ計ってるだけ
それスワップエリアのサイズ計ってるだけ
497デフォルトの名無しさん
2017/02/24(金) 15:25:25.94ID:nwaeFCKh winならGetProcessMemoryInfoなど
498デフォルトの名無しさん
2017/02/24(金) 17:26:32.84ID:9xRtAprE499デフォルトの名無しさん
2017/02/24(金) 18:02:34.91ID:See/JzpM >>498
望む答えだったみたいで良かったわ
熱があって若干朦朧とした頭で読み返さずに書き込んだから今読み返すと誤字とか予測変換で要らない単語入ってたり(一般的なLinux環境)とか、カッコの位置が違う(4KBとかの部分)とかあったけど。
望む答えだったみたいで良かったわ
熱があって若干朦朧とした頭で読み返さずに書き込んだから今読み返すと誤字とか予測変換で要らない単語入ってたり(一般的なLinux環境)とか、カッコの位置が違う(4KBとかの部分)とかあったけど。
500デフォルトの名無しさん
2017/02/24(金) 18:52:48.08ID:dfRROZm/ 環境依存ならPostMessageのエラーコードかな
俺はあんま理解してないけど
俺はあんま理解してないけど
501デフォルトの名無しさん
2017/02/24(金) 19:06:57.61ID:+aOqx8nq Win32なら信頼のPostMessageだな
503デフォルトの名無しさん
2017/02/24(金) 23:03:49.77ID:TLhS+9k8 はよ10年前のソース出せよ
504デフォルトの名無しさん
2017/02/24(金) 23:06:00.45ID:nwaeFCKh505デフォルトの名無しさん
2017/02/25(土) 07:21:27.70ID:98TUEskp なんで2分ちょいで出てくるかね。
506デフォルトの名無しさん
2017/02/25(土) 08:14:13.74ID:QoR/O5Qa 自演
508デフォルトの名無しさん
2017/02/26(日) 18:42:59.30ID:stmjd5mD 味噌県のクセにコーミソース以外のソースを使う非国民は去れ
509デフォルトの名無しさん
2017/03/06(月) 07:57:48.79ID:NqblWJNK510デフォルトの名無しさん
2017/03/06(月) 08:21:33.22ID:1XvIZqGa 最初の人がコピペで作ったんでしょ。+128に定義し直してるのもあるよ
511デフォルトの名無しさん
2017/03/06(月) 08:30:32.82ID:cJfBjMIV Aが奇数のときの動作が違うね
512デフォルトの名無しさん
2017/03/06(月) 10:33:08.69ID:NqblWJNK A、Bにはuint8を想定してますから、一瞬オーバーフローの関係かなとも思いましたが
そんなことはなく、特に深い意味はなさそうですね
ありがとうございます
そんなことはなく、特に深い意味はなさそうですね
ありがとうございます
513デフォルトの名無しさん
2017/03/13(月) 00:19:03.26ID:ZWBqluXH 仮想関数をオーバーライドするときはどう書くのがいい作法?
void vf()
virtual void vf()
virtual void vf() override
void vf() override
void vf()
virtual void vf()
virtual void vf() override
void vf() override
514デフォルトの名無しさん
2017/03/13(月) 06:06:33.92ID:IkDDkkqX ハゲ先生によると最後の void vf() override が良いみたい。
『プログラミング言語C++ 第4版』p.592
加えてoverride指定の不整合をチェックするコンパイラオプションだね。
GCCのVersion 5から使える -Wsuggest-override とか。
他のコンパイラについては知らん。
『プログラミング言語C++ 第4版』p.592
加えてoverride指定の不整合をチェックするコンパイラオプションだね。
GCCのVersion 5から使える -Wsuggest-override とか。
他のコンパイラについては知らん。
515デフォルトの名無しさん
2017/03/13(月) 10:43:38.74ID:Kr7xjXLG デストラクターに付けてる人はあんま見たこと無いな
class Derived : Base {
public:
~Derived() override {}
};
class Derived : Base {
public:
~Derived() override {}
};
516片山博文MZ ◆T6xkBnTXz7B0
2017/03/13(月) 20:30:08.38ID:VNPYsRzK Bcc55でtypeofを実現するのは不可能なのかな?
517片山博文MZ ◆T6xkBnTXz7B0
2017/03/13(月) 20:57:04.03ID:VNPYsRzK 古いコンパイラを使ってる人居る?
コンパイラの名前教えて下さい。
コンパイラの名前教えて下さい。
518デフォルトの名無しさん
2017/03/14(火) 23:30:09.48ID:wzywZVIy 老人がカセットテープデッキ求めたり
熟女モノのエロ本()を求めるような感じ?
熟女モノのエロ本()を求めるような感じ?
519デフォルトの名無しさん
2017/03/15(水) 01:04:07.22ID:R2Ueow1p 古いコンパイラと自覚しつつも使ってるような人はこのスレには来ないだろ
時代遅れの遺物の話じゃ通じないし
時代遅れの遺物の話じゃ通じないし
520デフォルトの名無しさん
2017/03/17(金) 11:46:00.03ID:pwo5j4El 何でA、Bを()しないんだ?
521デフォルトの名無しさん
2017/03/25(土) 21:37:15.77ID:IRaGixDk いまだに関数マクロ使ってるようでは
()したところで五十歩百歩
()したところで五十歩百歩
522デフォルトの名無しさん
2017/03/25(土) 22:37:56.47ID:9zWIhzFx523デフォルトの名無しさん
2017/03/26(日) 08:58:38.45ID:4rESVRzB ここはお前の日記を垂れる場所じゃない
「サポートによるとコンパイラのバグだった」で済むのに
アレやってコレやってを書くな低能
「サポートによるとコンパイラのバグだった」で済むのに
アレやってコレやってを書くな低能
524デフォルトの名無しさん
2017/03/27(月) 10:03:34.57ID:wSWIgauQ 事後報告あると参考になっていいんだけどな
今回は本人以外に状況がわからないから事後報告されてもw
今回は本人以外に状況がわからないから事後報告されてもw
525デフォルトの名無しさん
2017/03/30(木) 03:06:01.35ID:6sTQLdA2 http://codepad.org/KMQH3TsZ
ポインタをメンバに持たせた場合のget/setの書き方が分かりません
getの方は、ポインタを返すときに返した先で値を変えられないようにconstを付けたのですが、
sizePlus10のような関数を呼びたい場合に、const_castを付けて呼ぶことになってしまいました
値の変更をするのでsetを通してやるのが良いと思うのですが、何か良い書き方ありますか?
また、setの方は、一括で設定させることはできるのですが、
data->id、data->sizeの値を個別に設定したい場合、何か良い書き方はありますか?
コメントの部分のようにsetメンバ関数を何個も書く方法しか思いつきません
ポインタをメンバに持たせた場合のget/setの書き方が分かりません
getの方は、ポインタを返すときに返した先で値を変えられないようにconstを付けたのですが、
sizePlus10のような関数を呼びたい場合に、const_castを付けて呼ぶことになってしまいました
値の変更をするのでsetを通してやるのが良いと思うのですが、何か良い書き方ありますか?
また、setの方は、一括で設定させることはできるのですが、
data->id、data->sizeの値を個別に設定したい場合、何か良い書き方はありますか?
コメントの部分のようにsetメンバ関数を何個も書く方法しか思いつきません
526デフォルトの名無しさん
2017/03/30(木) 07:50:43.79ID:GtG5BmiK getDataの結果を修正したいのだから
杓子定規にgetDataの戻りにconst付けるのを止めればいいのではないか
そう言えばC++17(ドラフト)もstring::dataの戻りが非constに修正されたような
杓子定規にgetDataの戻りにconst付けるのを止めればいいのではないか
そう言えばC++17(ドラフト)もstring::dataの戻りが非constに修正されたような
527デフォルトの名無しさん
2017/03/30(木) 08:08:59.00ID:KJlpKUaR memcpy w
528デフォルトの名無しさん
2017/03/30(木) 10:48:22.67ID:JHpE2Dpf >>525
一般論として形でただ覚えるのではなくて意味を理解しよう
理解があやしいから設計の一貫性がなく混乱してるようにみえる
・Dataをポインタで所有するのはなぜ
・ゲッター/セッターを使ってアクセスするのはなぜ
・ゲッターで返す値にconstをつけるのはなぜ
・sizePlus10がData*を受けとるのはなぜ
MyClassの設計方針にあわせるならsizePlus10をDataではなくMyClassを受けとるようにして
void sizePlus10(MyClass & mc)
{
Data newdata = { mc.getData()->id, mc.getData()->size + 10 };
mc.setData(newdata);
}
あるいは別の関数を作って
void MyClassSizePlus10(MyClass & mc)
{
Data newdata = *mc.getData();
sizePLus10(&newdata);
mc.setData(newdata);
}
これが変だとか非効率だとか思うなら
MyClassの設計が要求にあってないのでそっちを変更する
一般論として形でただ覚えるのではなくて意味を理解しよう
理解があやしいから設計の一貫性がなく混乱してるようにみえる
・Dataをポインタで所有するのはなぜ
・ゲッター/セッターを使ってアクセスするのはなぜ
・ゲッターで返す値にconstをつけるのはなぜ
・sizePlus10がData*を受けとるのはなぜ
MyClassの設計方針にあわせるならsizePlus10をDataではなくMyClassを受けとるようにして
void sizePlus10(MyClass & mc)
{
Data newdata = { mc.getData()->id, mc.getData()->size + 10 };
mc.setData(newdata);
}
あるいは別の関数を作って
void MyClassSizePlus10(MyClass & mc)
{
Data newdata = *mc.getData();
sizePLus10(&newdata);
mc.setData(newdata);
}
これが変だとか非効率だとか思うなら
MyClassの設計が要求にあってないのでそっちを変更する
529デフォルトの名無しさん
2017/03/30(木) 20:11:34.52ID:irpIFLVN530デフォルトの名無しさん
2017/03/30(木) 23:27:09.74ID:O3+3nsIM531デフォルトの名無しさん
2017/03/30(木) 23:45:25.72ID:s+CP+YQd こういえクソみたいな方法を自慢気に語り出す奴が居るところかC++の最もクソな所だよね
532片山博文MZ ◆T6xkBnTXz7B0
2017/03/30(木) 23:51:55.55ID:2hi+y029 デフォルトコピーコンストラクターとか構造体代入とか知らないんだろう。
533デフォルトの名無しさん
2017/03/31(金) 00:14:17.76ID:5j4NF4+Z534デフォルトの名無しさん
2017/03/31(金) 01:59:49.12ID:OFYzpq31 やべえなおい糞コードの臭いがプンプンしやがるぜ
535デフォルトの名無しさん
2017/03/31(金) 02:09:29.70ID:DQgqVTGo >>526-529
ありがとうございます
今まではとりあえずget/setを書いてgetにはconstを付けとけば良いみたいな認識でしたが、
想定されるクラスの使われ方に合わせて適宜変更するべきでした
MyClassのようなget/setの分け方をすると、
sizePlus10のような関数やsetで不便になってしまうので、
constを付けないget/set共用のものにしてそれを通してアクセスさせるのが適切でした
( getData()でアクセスする場合、Data * const getData() const { /**/ } みたいな )
とても参考になりました
ありがとうございます
今まではとりあえずget/setを書いてgetにはconstを付けとけば良いみたいな認識でしたが、
想定されるクラスの使われ方に合わせて適宜変更するべきでした
MyClassのようなget/setの分け方をすると、
sizePlus10のような関数やsetで不便になってしまうので、
constを付けないget/set共用のものにしてそれを通してアクセスさせるのが適切でした
( getData()でアクセスする場合、Data * const getData() const { /**/ } みたいな )
とても参考になりました
536デフォルトの名無しさん
2017/03/31(金) 11:52:48.85ID:xItn/dk+ >>531
くそじゃない方法をおしえて
くそじゃない方法をおしえて
537デフォルトの名無しさん
2017/03/31(金) 12:09:56.69ID:c13jjk6+ C#じゃないからないでしょ
538デフォルトの名無しさん
2017/03/31(金) 13:26:56.75ID:CbPadW0u539デフォルトの名無しさん
2017/03/31(金) 13:38:11.94ID:2wgHKgmk540片山博文MZ ◆T6xkBnTXz7B0
2017/03/31(金) 17:24:06.64ID:tvggMnLQ typedef struct MY_STRUCT
{
int ch;
} MY_STRUCT;
MY_STRUCT a,b;
a.ch = 0;
b = a; //代入できる
{
int ch;
} MY_STRUCT;
MY_STRUCT a,b;
a.ch = 0;
b = a; //代入できる
541デフォルトの名無しさん
2017/03/31(金) 19:17:35.19ID:Xv9Etv1i542片山博文MZ ◆T6xkBnTXz7B0
2017/03/31(金) 19:19:25.80ID:tvggMnLQ 構造体の代入ができなかったのは大昔のことだ。
>>540
それ,K&R1 から堕落したよね
それ,K&R1 から堕落したよね
544片山博文MZ ◆T6xkBnTXz7B0
2017/03/31(金) 19:40:25.86ID:tvggMnLQ 構造体定義を#include <pshpack1.h>と#include <poppack.h>で囲むのは、スピードよりもメモリー効率を優先するときにする。
545片山博文MZ ◆T6xkBnTXz7B0
2017/03/31(金) 19:44:56.93ID:tvggMnLQ あるいは構造体のレイアウトを分かりやすくするときにパッキングを指定する。
547デフォルトの名無しさん
2017/03/31(金) 19:49:13.63ID:RKtYGe+y > スピードよりもメモリー効率を優先するときにする
20年くらい前まではそういう老人もいたね
今はメモリレイアウトを固定したい時にしか使わないけど
20年くらい前まではそういう老人もいたね
今はメモリレイアウトを固定したい時にしか使わないけど
548片山博文MZ ◆T6xkBnTXz7B0
2017/03/31(金) 19:58:28.84ID:tvggMnLQ #pragma 直接指定は礼儀が悪い、昔のやり方だ。
549デフォルトの名無しさん
2017/04/01(土) 02:25:44.35ID:m99QLuku メモリ効率だけの問題なら大抵の場合は順番入れ替えるだけで問題ないしな
551デフォルトの名無しさん
2017/04/01(土) 08:31:33.23ID:AOt54aKT そうそう
スタックに自動変数とかも言語道断
全部staticじゃなきゃね
スタックに自動変数とかも言語道断
全部staticじゃなきゃね
>>551
スタックに自動変数はあたりまえだよ‥static おじさん,じゃないつもりなんだが‥
構造体はポインタで扱うべきもので,実体をコピーするのはなるたけ避けたいね
C++ では void f(const C &arg) って,可能ならば const と参照の縛りをできるだけいれるよね,余計なコンストラクタを走らせないために
K&R1 は教育的な配慮に優れた実装だと思うんだ‥
スタックに自動変数はあたりまえだよ‥static おじさん,じゃないつもりなんだが‥
構造体はポインタで扱うべきもので,実体をコピーするのはなるたけ避けたいね
C++ では void f(const C &arg) って,可能ならば const と参照の縛りをできるだけいれるよね,余計なコンストラクタを走らせないために
K&R1 は教育的な配慮に優れた実装だと思うんだ‥
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★6 [樽悶★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★7 [樽悶★]
- 小野田紀美 経済安保相「悪いことをする外国人、日本にいない状況つくる」 [Hitzeschleier★]
- 【速報】公然わいせつの疑いで逮捕・送検・略式起訴のAぇ! group 草間リチャード敬太メンバー 脱退を発表 「心の病の療養」に専念 [Ailuropoda melanoleuca★]
- 中国国際航空が日本便を減便へ、春節休みも SNSでは投稿相次ぐ [七波羅探題★]
- 【🐼🇨🇳】「高市総理VS中国」で日本からパンダはゼロに? 上野動物園「パンダ返還期限」まであと4カ月…★2 [BFU★]
- 【実況】博衣こよりのえちえち声遊楽プロジェクト 共同研究第三弾🧪
- 【悲報】立憲岡田「間違った答弁をした高市総理に問題がある」→愛国者ブチギレ炎上 [834922174]
- 珍🏡珍
- 【悲報】40過ぎてるのに未経験の業界・職種に転職して新卒に毛の生えたひっくいひっくい年収で働いてるおっさんおるでしょ。あれ何? [257926174]
- 【速報】アメリカ「高市総理を支持する。中国の威圧は許せない」 [931948549]
- 小野田紀美大臣「悪いことをする外国人は日本にいない状況をつくる」 [856698234]
