エスケープシーケンスやWin32APIなどの環境依存なものもOK
そのような質問は必ず環境を書きましょう
半角空白やタブでのインデントはスレに貼ると無くなります
コードを貼れる所
http://codepad.org/
https://ideone.com/
前スレ
【初心者歓迎】C/C++室 Ver.105【環境依存OK】
https://mevius.5ch.net/test/read.cgi/tech/1556142878/
探検
【初心者歓迎】C/C++室 Ver.106【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
2020/07/13(月) 13:51:48.09ID:WBkWHxcT
2デフォルトの名無しさん
2020/07/13(月) 13:53:44.41ID:WBkWHxcT C言語を256倍使うための本
ttps://www.%61mazon.co.jp/dp/4756100430
詳説 C++ 第2版
ttps://www.%61mazon.co.jp/dp/479732743X
ttps://www.%61mazon.co.jp/dp/4756100430
詳説 C++ 第2版
ttps://www.%61mazon.co.jp/dp/479732743X
2020/07/13(月) 14:08:11.33ID:p1lvDPnd
C++20
https://ja.cppreference.com/w/cpp/compiler_support
https://ja.cppreference.com/
豆
http://www.open-std.org/
https://www.slideshare.net/KMC_JP/ss-45855264
https://ja.wikipedia.org/wiki/%E5%80%8D%E7%B2%BE%E5%BA%A6%E6%B5%AE%E5%8B%95%E5%B0%8F%E6%95%B0%E7%82%B9%E6%95%B0
https://ja.wikipedia.org/wiki/%E8%AA%A4%E5%B7%AE#%E8%A8%88%E7%AE%97%E8%AA%A4%E5%B7%AE%E3%81%AE%E7%A8%AE%E9%A1%9E
https://ja.cppreference.com/w/cpp/compiler_support
https://ja.cppreference.com/
豆
http://www.open-std.org/
https://www.slideshare.net/KMC_JP/ss-45855264
https://ja.wikipedia.org/wiki/%E5%80%8D%E7%B2%BE%E5%BA%A6%E6%B5%AE%E5%8B%95%E5%B0%8F%E6%95%B0%E7%82%B9%E6%95%B0
https://ja.wikipedia.org/wiki/%E8%AA%A4%E5%B7%AE#%E8%A8%88%E7%AE%97%E8%AA%A4%E5%B7%AE%E3%81%AE%E7%A8%AE%E9%A1%9E
2020/07/13(月) 14:09:20.92ID:p1lvDPnd
禿
https://ja.wikipedia.org/wiki/%E3%83%93%E3%83%A3%E3%83%BC%E3%83%8D%E3%83%BB%E3%82%B9%E3%83%88%E3%83%AD%E3%83%B4%E3%82%B9%E3%83%88%E3%83%AB%E3%83%83%E3%83%97
https://ezoeryou.github.io/cpp-intro/
https://ezoeryou.github.io/cpp17book/
https://ezoeryou.github.io/cpp14-appendix/
https://ezoeryou.github.io/cpp-book/C++11-Syntax-and-Feature.xhtml
https://ja.wikipedia.org/wiki/%E3%83%93%E3%83%A3%E3%83%BC%E3%83%8D%E3%83%BB%E3%82%B9%E3%83%88%E3%83%AD%E3%83%B4%E3%82%B9%E3%83%88%E3%83%AB%E3%83%83%E3%83%97
https://ezoeryou.github.io/cpp-intro/
https://ezoeryou.github.io/cpp17book/
https://ezoeryou.github.io/cpp14-appendix/
https://ezoeryou.github.io/cpp-book/C++11-Syntax-and-Feature.xhtml
2020/07/13(月) 14:14:23.03ID:+mCuetAH
2020/07/13(月) 14:17:35.80ID:+mCuetAH
2020/07/13(月) 16:28:13.78ID:srh9sya6
メンバに自クラスの配列を持つクラスのメンバ配列の初期化はc++ではどうやりますか?Javaでは下のように出来てます。
☆Javaでこうなっています
class A {
protected A[] node = new A[3];
}
☆c++でこうしたらエラーになりました。
@a.hpp
class A {
public:
static A node[];
};
@a.cpp
#include "a.hpp"
A A::node[] = new A[3];
ちなみに型Aを適当にintとかにしたらc++の方もいけました。
☆Javaでこうなっています
class A {
protected A[] node = new A[3];
}
☆c++でこうしたらエラーになりました。
@a.hpp
class A {
public:
static A node[];
};
@a.cpp
#include "a.hpp"
A A::node[] = new A[3];
ちなみに型Aを適当にintとかにしたらc++の方もいけました。
2020/07/13(月) 16:38:40.16ID:ny9O75E1
2020/07/13(月) 16:41:24.41ID:srh9sya6
10デフォルトの名無しさん
2020/07/13(月) 17:07:02.67ID:WBkWHxcT うまくいく例
class A {
public:
static A *node;
};
A *A::node = new A[3];
class A {
public:
static A *node;
};
A *A::node = new A[3];
2020/07/13(月) 17:22:15.52ID:ny9O75E1
staticにしない例
class A {
public:
A *node;
A();
};
A::A() {
node = new A[3];
}
class A {
public:
A *node;
A();
};
A::A() {
node = new A[3];
}
2020/07/13(月) 17:27:36.45ID:ny9O75E1
あ、ループしちゃった
2020/07/13(月) 17:30:23.80ID:KVdg44rD
>>9
> c++ではメンバに自クラスの変数がいるとダメなのですか?
そりゃだめだよ、もしそんなのができたら
class A {
A a;
int b;
};
A x;
とした時に x.b; x.a.b; x.a.a.b; ... みたいに無限に int b; を作る羽目になるから。
Javaなどは
class A {
A *a;
int b;
};
みたいなのしかできないから問題ないだけ。
> c++ではメンバに自クラスの変数がいるとダメなのですか?
そりゃだめだよ、もしそんなのができたら
class A {
A a;
int b;
};
A x;
とした時に x.b; x.a.b; x.a.a.b; ... みたいに無限に int b; を作る羽目になるから。
Javaなどは
class A {
A *a;
int b;
};
みたいなのしかできないから問題ないだけ。
2020/07/13(月) 17:33:49.37ID:17o/9bhC
C++のクラス変数とJavaのクラス変数の違い、だっけ。
端的に「C++ではnewなしにクラス変数を宣言して使える」ようにするため。
Javaと対比しながら説明する能力がないんで中途半端で悪いけど。
端的に「C++ではnewなしにクラス変数を宣言して使える」ようにするため。
Javaと対比しながら説明する能力がないんで中途半端で悪いけど。
1514
2020/07/13(月) 19:29:02.10ID:17o/9bhC × 変数を宣言
○ 変数を定義
中途半端な上に間違っててすまぬ。
あまつさえ細かい訂正のために貴重な投稿枠の浪費までも。
○ 変数を定義
中途半端な上に間違っててすまぬ。
あまつさえ細かい訂正のために貴重な投稿枠の浪費までも。
2020/07/14(火) 08:27:52.03ID:bhhAeN2N
>>14
クラス変数の問題ではなく、クラスのメンバとして配列を宣言した場合にC++では配列の実体をメンバとして持つのに対し、Javaでは配列の実体は別のところに作られて参照だけを持つというところでないの?
クラス変数の問題ではなく、クラスのメンバとして配列を宣言した場合にC++では配列の実体をメンバとして持つのに対し、Javaでは配列の実体は別のところに作られて参照だけを持つというところでないの?
2020/07/14(火) 08:30:26.07ID:5kZc9hZE
7の人です
みなさんありがとうございます
別のやり方考えます
みなさんありがとうございます
別のやり方考えます
2020/07/14(火) 09:28:38.75ID:PHX4w74f
19デフォルトの名無しさん
2020/07/14(火) 12:52:08.42ID:Mma3I+br C/C++ はヌルポを敢えて使う
2020/07/14(火) 23:49:13.61ID:PYLNqhFb
未定義動作
22はちみつ餃子 ◆8X2XSCHEME
2020/07/15(水) 01:04:37.36ID:hr2ndtrb23デフォルトの名無しさん
2020/07/15(水) 12:07:21.21ID:cL9c5hZ8 enum {hoge, fuga, hage};
で
hoge==0
fuga==1
hage==2
として使えるとして
0,1,2とかの数字から実行時にhoge,fuga,hageの名前を知りたい時って
何か便利なインターフェースありますか?
みんな毎回線形探索のコード描くみたいにやってる?
で
hoge==0
fuga==1
hage==2
として使えるとして
0,1,2とかの数字から実行時にhoge,fuga,hageの名前を知りたい時って
何か便利なインターフェースありますか?
みんな毎回線形探索のコード描くみたいにやってる?
2020/07/15(水) 12:39:32.75ID:fkxllX2L
2020/07/15(水) 12:50:24.76ID:Gd6Zo+Db
26デフォルトの名無しさん
2020/07/15(水) 13:02:12.66ID:cL9c5hZ8 連番じゃないときとか
結構でかい番号だったりするときは困りますね
結構でかい番号だったりするときは困りますね
27デフォルトの名無しさん
2020/07/15(水) 13:08:43.15ID:ONqo+DKP ##演算子でどうにかなるんじゃね
28デフォルトの名無しさん
2020/07/15(水) 13:14:49.36ID:jM1x+GOc IT掲示板群 ttp://x0000.net/forum.aspx?id=15
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
29デフォルトの名無しさん
2020/07/15(水) 13:38:14.90ID:cL9c5hZ8 線形探索するにしても enum 用に foreach もあるのかなと思ったのですが
http://sanichi999.hateblo.jp/entry/2014/12/19/011820
こんな感じですね
名前とか同じことを何度も書いてる気がしてしまうのと
割と定型な気がするのでコンパイラが提供してくれてないかなと思ったで質問しました
http://sanichi999.hateblo.jp/entry/2014/12/19/011820
こんな感じですね
名前とか同じことを何度も書いてる気がしてしまうのと
割と定型な気がするのでコンパイラが提供してくれてないかなと思ったで質問しました
30はちみつ餃子 ◆8X2XSCHEME
2020/07/15(水) 15:30:19.58ID:hr2ndtrb 実行時に列挙定数の名前の文字列が欲しいことがそんなにあるかな?
デバッグプリント用途くらいしか思いつかんのだけど。
デバッグプリント用途くらいしか思いつかんのだけど。
2020/07/15(水) 16:14:13.34ID:LgiIyt9Z
vector<int> a = {8, 1, 9, 5, 7, 3};
があるときに例えば
vector<int> b = a{0, 2, 5};
とかしたら
b が {8, 9, 3} の配列みたいになってくれる書き方ってありますか?
があるときに例えば
vector<int> b = a{0, 2, 5};
とかしたら
b が {8, 9, 3} の配列みたいになってくれる書き方ってありますか?
2020/07/15(水) 16:43:08.71ID:stUpixMt
vector<int> b = {a[0], a[2], a[5]};
33はちみつ餃子 ◆8X2XSCHEME
2020/07/15(水) 20:59:08.41ID:hr2ndtrb2020/07/15(水) 23:08:06.76ID:4eO2mC8f
>>31 for(int& e: b) e = a[e];
2020/07/16(木) 12:17:49.42ID:rBscjMJk
>>23
msvc/clangのc++17限定でよければ、nameof c++というライブラリがある。
msvc/clangのc++17限定でよければ、nameof c++というライブラリがある。
2020/07/16(木) 12:58:54.15ID:Bj5j4Y6i
>>33
https://ideone.com/x0lKkD
で
for(auto t: {indices...}) std::cout << source[t] << std::endl;
だと動くのですが
for(T t: {indices...}) std::cout << source[t] << std::endl;
だとエラーになります
どうして?
https://ideone.com/x0lKkD
で
for(auto t: {indices...}) std::cout << source[t] << std::endl;
だと動くのですが
for(T t: {indices...}) std::cout << source[t] << std::endl;
だとエラーになります
どうして?
37はちみつ餃子 ◆8X2XSCHEME
2020/07/16(木) 13:49:08.52ID:MICl0UeU2020/07/16(木) 15:12:49.52ID:sYAaUXpT
2020/07/17(金) 13:55:06.86ID:xXsIieN6
テンプレートが型付マクロにしかみえません
眼科に行った方が良いですか?
眼科に行った方が良いですか?
2020/07/17(金) 14:44:53.44ID:p55TjBUs
型付であることこそ重要です
2020/07/17(金) 17:27:51.73ID:LIcKojh8
マクロといってのcのマクロではなくlispのマクロ的な機能
まあコンパイル時の制限はあるけど
まあコンパイル時の制限はあるけど
42デフォルトの名無しさん
2020/07/18(土) 01:05:56.87ID:vSXqjqjP Win32APIでコンボボックスの値をオーナードローしているんですが、wchar_tで項目追加すると文字の描画ができるんですが、
c_str()だと文字化けします。何故ですか?
・WM_INITDIALOG
文字化けしないケース
const wchar_t *a = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(a));
文字化けするケース
std::wstring b = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(b.c_str()));
・WM_DRAWITEM
DrawText(lpDraw->hDC, (wchar_t*)lpDraw->itemData, -1, &r2, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
c_str()だと文字化けします。何故ですか?
・WM_INITDIALOG
文字化けしないケース
const wchar_t *a = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(a));
文字化けするケース
std::wstring b = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(b.c_str()));
・WM_DRAWITEM
DrawText(lpDraw->hDC, (wchar_t*)lpDraw->itemData, -1, &r2, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
2020/07/18(土) 01:43:29.19ID:2xoJksuz
表示する時にはbが解放されてるんじゃないの?
2020/07/18(土) 02:35:10.07ID:IdAxqtyn
オーナードローの時、CBS_HASSTRINGSスタイル指定しないと、そんな感じになるっぽいね
CB_ADDSTRINGメッセージに書いてあるね
CB_ADDSTRINGメッセージに書いてあるね
45デフォルトの名無しさん
2020/07/18(土) 13:25:54.56ID:94poIsAY 1つの言語をある程度やりこまないと能力値がリセットされますか?
46デフォルトの名無しさん
2020/07/18(土) 13:38:50.50ID:uRU3MGLx 理解する能力と
使いこなす能力と
創造する能力は
全部別
使いこなす能力と
創造する能力は
全部別
47デフォルトの名無しさん
2020/07/18(土) 15:42:57.82ID:94poIsAY 理解力のことです
ごめんなさい
ごめんなさい
2020/07/18(土) 15:58:14.32ID:qVma+RcU
リセットはされない。
複数言語を学ぶときは並行にやって混乱するか順番にやって混乱するかのどちらか。
自分に向いた方を選べ。
複数言語を学ぶときは並行にやって混乱するか順番にやって混乱するかのどちらか。
自分に向いた方を選べ。
2020/07/18(土) 16:14:37.72ID:C0jdHcgs
ある程度やりこまなければある程度落ちるのは常識
ある程度やりこめばある程度上がるのも常識
ある程度やりこめばある程度上がるのも常識
2020/07/18(土) 17:22:27.13ID:Bt+NBO6d
>>45
リセットされたのではなく、自分が理解できていたと思い込んでいただけで実際の理解がその程度だったということに気づかされただけだと思うぞ。
リセットされたのではなく、自分が理解できていたと思い込んでいただけで実際の理解がその程度だったということに気づかされただけだと思うぞ。
51デフォルトの名無しさん
2020/07/18(土) 18:01:57.62ID:51enBbxV あるある
2020/07/18(土) 18:20:51.79ID:sJrDCvPM
fopenでccs=utf-8を指定して改行コードのCRLFをfputwsで書き込んだら
CRCRLFになったんですけど。バグですか?
CRCRLFになったんですけど。バグですか?
53デフォルトの名無しさん
2020/07/18(土) 18:38:01.13ID:yqiH8/gB appendで開いてたり
54蟻人間 ◆T6xkBnTXz7B0
2020/07/18(土) 18:39:23.19ID:5h3AvQ+O2020/07/18(土) 19:04:26.79ID:sJrDCvPM
何と!
2020/07/18(土) 19:10:12.51ID:tp8HW1uL
バイナリじゃなく、テキスト処理してる場合は、
各OS のAPI を使った時に、
Windows なら、CRLF になって、
Linux なら、LF になるのだろう
Ruby でもそう。
Windows にインストールしたものは、CRLF になって、
Linux にインストールしたものは、LF になる
各OS のAPI を使った時に、
Windows なら、CRLF になって、
Linux なら、LF になるのだろう
Ruby でもそう。
Windows にインストールしたものは、CRLF になって、
Linux にインストールしたものは、LF になる
2020/07/18(土) 19:19:47.61ID:zDePOjuW
LFがCRLFになるんじゃなくて\nがCRLFになっただけじゃないのか?
58蟻人間 ◆T6xkBnTXz7B0
2020/07/18(土) 19:26:44.67ID:NJ+LQ+vq \nがLFなんだよ。
2020/07/18(土) 19:38:21.74ID:zDePOjuW
\x0aを出力してみればはっきりする。
6056
2020/07/18(土) 19:57:14.80ID:tp8HW1uL Global New Line みたいな指定もある。
\n が、OS によって自動的に切り替わるもの
Windows なら、CRLF になって、
Linux なら、LF になる
\n が、OS によって自動的に切り替わるもの
Windows なら、CRLF になって、
Linux なら、LF になる
2020/07/19(日) 06:39:45.80ID:wsDBDsuq
\nはコンパイラが読み込んだ時点でLFに変換される
そうでないと、'\n'みたいな文字を読み込んだ時に
保存に2バイト必要になってしまう
そうでないと、'\n'みたいな文字を読み込んだ時に
保存に2バイト必要になってしまう
62デフォルトの名無しさん
2020/07/21(火) 11:50:35.81ID:IJfaFmgd C++のenumの仕様について質問させてください
enum Aとenum Bが定義されていた時、
void func(enum A);
void func(enum B);
のようにオーバーロードできるでしょうか。
enum Aとenum Bが定義されていた時、
void func(enum A);
void func(enum B);
のようにオーバーロードできるでしょうか。
63デフォルトの名無しさん
2020/07/21(火) 11:58:59.44ID:+OCbOnRh enum class
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 台湾有事での集団的自衛権行使に賛成48%、「反対」が44.2% ★2 [♪♪♪★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★13 [BFU★]
- 【サッカー】「国立ガラガラじゃん!」 「タダ券ばら撒かないんだっけ?」天皇杯決勝、6万7750人収容のスタンドに目立つ空席 [鉄チーズ烏★]
- 【淡路島】88歳男が好意を理由に60歳女性宅へ侵入か 「下の毛がほしい」不適切メモを残す ストーカー容疑で再逮捕 洲本市 [nita★]
- 【立憲民主党】「質問レベルの低さが立憲の存立危機事態」台湾有事発言を引き出した立憲“執拗追及”が波紋… [尺アジ★]
- 【NHK】受信料の未払い督促を10倍に強化… 支払い拒否が続くと民事手続きも 「カーナビも受信料いただきます」方針 [冬月記者★]
- 他サポ 2025-261
- 他サポ 2025-260
- 2025 SUPER FORMULA Lap18
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1807
- 京都競馬4回5日目エリザベス女王杯★3
- 福島競馬3回5日目
- 大河ドラマ『高市早苗』👈ありがちなこと [804169411]
- 高市ソルジャー、国連の敵国条項を持ち出すのは卑怯だと中国大使館にブチギレ [931948549]
- ネトウヨですら高市早苗首相をそんな評価してないとの声。SNSの熱量が少ない。 [253245739]
- 日本人の73%「中国が嫌い」日本の右傾化止まらない [165981677]
- 【高市悲報】中国、南アフリカを味方につけてイキる [614650719]
- 日本人の48%覚悟完了… [819729701]
