次スレを立てる時は本文の1行目に以下を追加して下さい。
!extend:on:vvvvv:1000:512
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。
前スレ
C++相談室 part137
https://mevius.5ch.net/test/read.cgi/tech/1531558382/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.103【環境依存OK】
https://mevius.5ch.net/test/read.cgi/tech/1530384293/
■長いソースを貼るときはここへ。■
http://codepad.org/
https://ideone.com/
[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
----- テンプレ ここまで -----
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
探検
C++相談室 part137
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 12c3-4saf)
2018/08/27(月) 16:02:00.94ID:vY3QDx2y02デフォルトの名無しさん (ワッチョイ 8ac3-4saf)
2018/08/27(月) 16:03:04.41ID:vY3QDx2y0 すまんスレ番ミスった
3デフォルトの名無しさん (ワッチョイ 6698-PcWx)
2018/08/27(月) 16:03:29.14ID:H/K1FpSE0 謝って許されることじゃないね
4デフォルトの名無しさん (ワッチョイ ea34-5zXi)
2018/08/27(月) 16:22:40.23ID:oonIPXiN0 こういうヤツがプログラミングするとえらいことになる
5デフォルトの名無しさん (ワッチョイ 3aa1-WQAu)
2018/08/27(月) 16:26:27.53ID:7PWma/MO0 1 はクズ
6デフォルトの名無しさん (ワッチョイ bd93-zO5i)
2018/08/27(月) 17:22:00.81ID:TVAO+u4x0 フェイルセイフ機構として
スレッドを立てて何分間あるいはレス何個までは
立てた人に限りタイトルを修正できる、
みたいな機能があっても良いかも知れん。
あるいは事前に「これから立てるスレッドは〜の後継である」
みたいな宣言ができて、重複や番号の間違いをチェックしてくれるとか。
スレッドを立てて何分間あるいはレス何個までは
立てた人に限りタイトルを修正できる、
みたいな機能があっても良いかも知れん。
あるいは事前に「これから立てるスレッドは〜の後継である」
みたいな宣言ができて、重複や番号の間違いをチェックしてくれるとか。
7デフォルトの名無しさん (ワッチョイ 6698-PcWx)
2018/08/27(月) 17:25:07.23ID:H/K1FpSE08デフォルトの名無しさん (アウアウカー Sad5-fKBf)
2018/08/27(月) 18:21:58.03ID:xvf87VjGa 結局どうするん?
ここ使用?
ここ使用?
9デフォルトの名無しさん (ワッチョイ bd08-4dUf)
2018/08/27(月) 22:39:11.81ID:oahf+hzU0 vector<object*>* func()
{
vector<object*>* vect = new vector<object*>;
for(int i = 0; i < 10; ++i)
{
object* obj = new object;
vect->push_back(obj);
}
return vect;
}
若干うろ覚えなんですけどこんな関数があります。ポインターを収納したベクターへのポインターを返すというものです。
まず質問なんですけど、関数内でnewして確保したメモリアドレスを返すってこれあまり良くないこと……ですよね?それともよくあることでしょうか。
それともう一つ。仮にmainなりどこかでこの関数の戻り値を受け取って利用したあと、メモリ解放はどうすればよいのでしょう
例えばdelete vectだけか、それともobject*をループで回して全部にdeleteすればいいのか、それとも両方やらにゃならんのか
よろしくお願いします。
{
vector<object*>* vect = new vector<object*>;
for(int i = 0; i < 10; ++i)
{
object* obj = new object;
vect->push_back(obj);
}
return vect;
}
若干うろ覚えなんですけどこんな関数があります。ポインターを収納したベクターへのポインターを返すというものです。
まず質問なんですけど、関数内でnewして確保したメモリアドレスを返すってこれあまり良くないこと……ですよね?それともよくあることでしょうか。
それともう一つ。仮にmainなりどこかでこの関数の戻り値を受け取って利用したあと、メモリ解放はどうすればよいのでしょう
例えばdelete vectだけか、それともobject*をループで回して全部にdeleteすればいいのか、それとも両方やらにゃならんのか
よろしくお願いします。
10デフォルトの名無しさん (ワッチョイ 2561-+TX9)
2018/08/27(月) 22:45:10.99ID:X1STgCw40 どなたか c++でのソケット通信を使った複数人が使えるチャットのサンプルコード持ってる人いませんか?
ネットで色々調べてるんですけど、tcpじゃなくてUDPのやつだったりwindowsじゃなかったりcだったり書いてあることが難し過ぎたり...
そもそも1:1のコードばかりで複数人対応のサンプルコードが見つかりませんorz
ネットで色々調べてるんですけど、tcpじゃなくてUDPのやつだったりwindowsじゃなかったりcだったり書いてあることが難し過ぎたり...
そもそも1:1のコードばかりで複数人対応のサンプルコードが見つかりませんorz
11デフォルトの名無しさん (ワッチョイ 2561-+TX9)
2018/08/27(月) 22:46:54.38ID:X1STgCw40 複数人対応にするにあたって、複数のソケットを用意するのとselect関数が必要になると思うのですけど、selectの方はおそらく理解できています。
複数のソケットからアクセプトされるところの流れが全然分からないです。
今自分が書いてみたコードだとスタックオーバーフローというらしい現象が起こってしまってます。
複数のソケットからアクセプトされるところの流れが全然分からないです。
今自分が書いてみたコードだとスタックオーバーフローというらしい現象が起こってしまってます。
12デフォルトの名無しさん (ワッチョイ b9f2-PcWx)
2018/08/27(月) 22:47:25.25ID:CIUWIYCt0 難しくないものは存在しないとオモ
13デフォルトの名無しさん (ワッチョイ ea34-5zXi)
2018/08/27(月) 22:50:37.52ID:oonIPXiN014デフォルトの名無しさん (ワッチョイ fdb3-PcWx)
2018/08/27(月) 22:57:17.24ID:AuFamtLr015デフォルトの名無しさん (ブーイモ MM8e-my2l)
2018/08/27(月) 23:00:46.13ID:CP0MczZVM >>10-11
次の本が、似たような状況(たしかレーシングゲームだったか)のサンプルを載せていたと記憶しています
https://www.amazon.co.jp/gp/product/4774117544/
Windows の winsock も UNIX のバークレーソケットと似たようなもので、若干の修正は必要ですが、そこはネットを参考にして書きなおせる範囲だと思います
この本は初版が 1992 年頃に出たときから htons()/ntohs() が書いていない、とボロカスだったんですが、私はとっても好きだったのです…
次の本が、似たような状況(たしかレーシングゲームだったか)のサンプルを載せていたと記憶しています
https://www.amazon.co.jp/gp/product/4774117544/
Windows の winsock も UNIX のバークレーソケットと似たようなもので、若干の修正は必要ですが、そこはネットを参考にして書きなおせる範囲だと思います
この本は初版が 1992 年頃に出たときから htons()/ntohs() が書いていない、とボロカスだったんですが、私はとっても好きだったのです…
17デフォルトの名無しさん (ワッチョイ 2580-kiUO)
2018/08/27(月) 23:16:58.65ID:zX+eejgv0 listenで待ってるスレッド(もしくはプロセス、こっちならあとでfork()する)がいる
listenで待ってるスレッドやプロセスからacceptして
peerと新しいソケットで通信するスレッドを作る
もうコレで分かる
listenで待ってるスレッドやプロセスからacceptして
peerと新しいソケットで通信するスレッドを作る
もうコレで分かる
18デフォルトの名無しさん (ワッチョイ 6680-jqYf)
2018/08/27(月) 23:32:35.96ID:ba8BcfX3019デフォルトの名無しさん (ワッチョイ 2561-+TX9)
2018/08/27(月) 23:32:44.53ID:X1STgCw40 サーバーが自分用のソケット一つと複数個のユーザー用ソケットを作成し、ユーザー 一人につき一つのソケットが割り振られるイメージでした。
20デフォルトの名無しさん (アウアウオー Sa12-fKBf)
2018/08/27(月) 23:52:05.98ID:H8sSdLfla こんな感じにpublicにもmainいてもエラーにならないのはどうしてですか?
Main.h
class CMain
{
public:
int main(int argc, char* argv[]);
};
Main.cpp
int main(int argc, char* argv[])
{
return 0;
}
Main.h
class CMain
{
public:
int main(int argc, char* argv[]);
};
Main.cpp
int main(int argc, char* argv[])
{
return 0;
}
21デフォルトの名無しさん (ワッチョイ ea5e-7kIV)
2018/08/27(月) 23:57:35.85ID:TZo7knfc0 一般関数のmainとメンバ関数Cmain::main()は別物だろうよ。
22デフォルトの名無しさん (ワッチョイ 4af9-DXeA)
2018/08/28(火) 00:05:18.35ID:04IHxsB70 >>20
名前空間が違っていて区別がつくから同じ名前のものがあっても大丈夫。
名前空間が違っていて区別がつくから同じ名前のものがあっても大丈夫。
23デフォルトの名無しさん (アウアウオー Sa12-fKBf)
2018/08/28(火) 00:18:40.52ID:wxxo3xcIa >>21,22
なるほど、それもそうですね
なるほど、それもそうですね
24デフォルトの名無しさん (ワッチョイ bd08-4dUf)
2018/08/28(火) 07:30:50.31ID:r63k0nU7025デフォルトの名無しさん (ワッチョイ bd04-4dUf)
2018/08/28(火) 07:39:23.68ID:oGnGbrSA0 スマポつかえよ!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国からの留学中止相次ぐ 中国外務省「日本の治安が悪化」 [♪♪♪★]
- 特攻機と同じ名称「桜花中」、福岡・大牟田市の新設中学校名に異論 市民団体が再考申し入れ [少考さん★]
- サウナ火災で夫婦死亡 非常ボタンが“電源切れ”★2 [夜のけいちゃん★]
- 町山智浩「日本のパンダ経済効果は308億円」…「…いらない」と言ってる人達は、パンダで暮らす人々の損害補填してくれるのか…と問う★2 [少考さん★]
- 個人金融資産、2286兆円 9月末、過去最高更新―日銀 [少考さん★]
- 「育休もらい逃げ」はずるい?🤔職場復帰しないで辞めるはアリかナシか [パンナ・コッタ★]
- 【高市速報】デヴィ夫人「中国の暴虐に対し、日本の方々よ、全員で戦いましょう」😮 [518915984]
- テレビ局「なんでお前ら、テレビ見なくなっちゃったの;;」 [161547316]
- 赤坂サウナ蒸し焼き事件の夫婦のインスタ「娘の名前は汐亜(せあ)、英語でかくとSea、海が似合う娘に育ったらいいなって。笑」 [329329848]
- 愛国保守さんが日本に無謀な戦争をさせようとしてる理由がマジでわからん… [819729701]
- るるさんを白と黒で塗って
- 【朗報】井川意高「日本がアジア解放をしたというのは嘘、日本が勝ってたらアジアを再植.民地化してただけ」 [931522839]
