[過去ログ] C++相談室 part137 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
9(3): (ワッチョイ bd08-4dUf) 2018/08/27(月)22:39 ID:oahf+hzU0(1) AAS
vector<object*>* func()
{
vector<object*>* vect = new vector<object*>;
for(int i = 0; i < 10; ++i)
{
object* obj = new object;
vect->push_back(obj);
省8
11(3): (ワッチョイ 2561-+TX9) 2018/08/27(月)22:46 ID:X1STgCw40(2/3) AAS
複数人対応にするにあたって、複数のソケットを用意するのとselect関数が必要になると思うのですけど、selectの方はおそらく理解できています。
複数のソケットからアクセプトされるところの流れが全然分からないです。
今自分が書いてみたコードだとスタックオーバーフローというらしい現象が起こってしまってます。
120(3): (ワッチョイ 1dc3-4YxK) 2018/09/01(土)07:48 ID:vnjaDev80(1) AAS
情報系大学3年生
恥ずかしいことに今までやっていた言語がC++じゃなくてCだったことを知った…
(だってVisualStudio起動するときにC++開発モードを選ぶように言われたんだもの)
そういうわけでC++はどんなもんかなと本屋でちらっと明解C++を手に取ってみたら全く別物じゃねえか…
わかんねえよ……ネットで調べてみたら複雑らしいし
Cならatcoderで緑色になるくらいは書けるけど、でも就活のときCしか書けませんC++わかりませんってかなり致命的?
150(4): 120 (ワッチョイ 1dc3-4YxK) 2018/09/02(日)07:00 ID:HcdhtgGT0(1) AAS
>>120です。レス少し遅くなっちゃったけどレスくれたみんな詳しくありがとう
とりあえずじっくり勉強してみることにするわ
このご時世、就活を意識するならPythonのほうが優先度は高そう感じがするけど…
就活についてのアドバイスしてくれた人がいるけど、納得した。
「できます」「つかえます」って基準が不明瞭だからさして効果はないか。
ちなみにどんなものを作れば有利に働くかな?
趣味でプログラミングをしているけど何か作りたいものがあってはじめたんじゃなくて競技プログラミングが面白そう、という理由ではじめて競技プログラミングをメインにやってた
省1
195(3): ◆QZaw55cn4c (ワッチョイ 6360-3+v7) 2018/09/04(火)00:05 ID:lJV/Mb/R0(1/2) AAS
以前の話
2chスレ:tech
やりたいこと
2chスレ:tech
質問
一つの bitset または vector<bool> に対して、異なるスレッドから集中してビットをオンしまくる、ということをして矛盾が発生することはありますか?
やりたいことはエラトステネスのふるいなので、この場合オンしたあとオフすることはありません
省10
255(5): (オイコラミネオ MM53-EsDf) 2018/09/06(木)12:11 ID:uRta3OIBM(1) AAS
intの場合は速度差は特に考慮しなくて良いんですねありがとうございます
それと、関数内でOpenCVで画像をゴニョゴニョして、結果の画像をリターンしたい場合は、どちらが良いのですかね?
特にメモリリークを起こしたくない(今現在起きてるので改善したい)ので、もし何か重大な違いがあるなら知りたいです
void hoge(cv::Mat x, cv::Mat ret){
ret = x + cv::Scalar(100);
}
cv::Mat hoge(cv::Mat x){
省2
322(3): (アウアウカー Sa33-IcDn) 2018/09/07(金)22:58 ID:nLV7kBrTa(1/2) AAS
すみません質問があります
メインスレッドと通信スレッドがいて、
通信スレッドはメインスレッドのオブジェクトポインタ持ってます
メインスレッドはクラス化されており、スレッド用のstatic関数以外にもメンバ関数を持っています
通信スレッドがデータ受信して、メインスレッドの別のメンバ関数を呼び出した時、
メインスレッドで実行していた処理はどうなるのでしょうか?
メインスレッドで実行していた処理はあくまでもstaticな関数の処理で、staticでない他のメンバ関数は別に処理されるのでしょうか?
324(4): (アウアウカー Sa33-IcDn) 2018/09/07(金)23:21 ID:nLV7kBrTa(2/2) AAS
>>323
分かりずらくて申し訳ありません..
もし通信スレッドで呼び出した別のメンバ関数内でメンバ変数を変更した場合、
メインスレッドでもメンバ変数の変更値を参照できるのでしょうか
347(3): ◆QZaw55cn4c (ワッチョイ da60-Mhaf) 2018/09/08(土)00:31 ID:t7GfMYxV0(1/5) AAS
みなさん厳しいですね…
私は質問側ですが、そして今 schme スレで質問を丸投げしちゃっていますが、わからないときは、なにがわからないかわからない、という感じだったりしています
>>324
なにか断片的でいいからコード例をあげていただくと嬉しいです、例えば 外部リンク:ideone.com
354(3): (ワッチョイ b3bd-5rD0) 2018/09/08(土)02:36 ID:6MRSNGru0(4/7) AAS
>>353
>これはCPUキャッシュがメインメモリに吐き出されることを保証するものですか?
ちげう
実行したコアのライトコマンドキューかリードコマンドキュー上の命令をその場で全部実行してしまうというもの
キャッシュのinvalidateやfillが起きるかどうかとは別の話(結果的に起きることもあるが常にではない
キャッシュと関係あるみたいな説明のページがあることは承知しているが苦情は漏れに言わないでホスイ
>これらの命令は Pentiumu2 あたりにはなかったと思います、でも Pen2 とか特に Celeron-BP6(abit) で普通にデュアルプロセッサできていたのはどうしてでしょうか?
省3
364(3): (ワッチョイ 7ab3-M35H) 2018/09/08(土)11:49 ID:+e2Zk2SC0(1) AAS
>>360
cpuのメモリモデルの説明読んだら最初の方に書いてあると思うけど
普通ワード単位のアクセスは何もしなくてもハード的にアトミックであることが保証されてる
そこで壊れたらやってられないからな
533(5): (オイコラミネオ MM6b-qteA) 2018/09/18(火)01:31 ID:n7K73R0GM(1) AAS
hogeはdouble型で
int temp = int(hoge);
if (temp > 0)
return temp;
else
return 0;
このような処理をしたいのですが、何か良さげな内部関数とかないですかね
549(5): 533 (オイコラミネオ MM4f-qteA) 2018/09/18(火)12:44 ID:TXDNyaJKM(1) AAS
ありがとうございます
max関数使わせていただきます
もう一つ別の質問なのですが、
2つのベクターの要素(1000個程度)の比較で、同じi番目の要素の内容差が10以上の要素番号(イテレータ?)を調べたいです
この操作は何回も繰り返すので出来るだけ高速化したいのですがなにか良い方法ありませんかね?
ベクターの要素はint型で内容は大体1000以下の整数です
vec1[100] = 100とvec2[100] = 300
省2
574(4): (JP 0Hd6-Y82R) 2018/09/21(金)13:11 ID:JwHgudh+H(1/2) AAS
関数A,B、C、D、EがあってAの中でBを呼んで、Bの中でCを……
って構造があって、例えばEでエラーが出るとします。大本のAにそれを伝えてエラーにしたいんですけどどうしたらいいでしょう
BCDEの戻り値全部boolにしてfalseを返すくらいしか思いつかないです
587(5): はちみつ餃子◆8X2XSCHEME (ワッチョイ 066f-coYL) 2018/09/21(金)18:21 ID:FzfC+eZt0(2/6) AAS
>>586
なんでもかんでもメンバ関数として持たせるのはダサいというのが近年の風潮。
設計方針にもよるんだけど、機能をちょっと増やすたびに新しい型を作るのも馬鹿馬鹿しいだろう。
単なる関数として作ればそれでよいはずのことにクラスの依存関係まで出てくるの、ホントに良くない。
588(4): (ワッチョイ 01b3-coYL) 2018/09/21(金)18:35 ID:nikK7GUa0(1/8) AAS
>>584
>どちらか迷ったら移譲
やめろ、割とマジで
本来継承が好ましいものに委譲を使うと後々になって必ず破綻する
お前D&E読んでないのか?
>>587
>ダサいというのが近年の風潮
省5
632(3): (ラクッペ MMe1-BR5k) 2018/09/22(土)13:22 ID:PHVB0Lj2M(2/3) AAS
>>631
Boostのテンプレートを読んでるのですが、理解できない点です
675(3): (ワッチョイ 2d48-coYL) 2018/09/24(月)11:22 ID:GIs1tf8Y0(1/9) AAS
頼りすぎつーか逆だと思うぜ
コンテナの要件なんかインターフェイスにすればすっきりするのに
紙マニュアル(pdf含む)でガタガタ書かれた口約束とかすげーイヤ
歴史的に見てもそれをやるのに充分な言語機能がもうあったのに
707(3): (ワッチョイ 5dc3-teld) 2018/09/24(月)18:31 ID:cpSL59m30(10/10) AAS
struct MyClassHolder
{
MyClass* p;
MyClassHolder(): p(new MyClass()){}
~ MyClassHolder(){delete p;}
};
とか作っとけばいいんじゃない
省1
750(6): (ラクッペ MMe1-BR5k) 2018/09/26(水)13:25 ID:3bFkpdGnM(1/3) AAS
C++とシェルスクリプトの違いって何ですか?
シェルスクリプトで出来ることでC++ができないこと
C++が出来てシェルスクリプトで出来ないこととかそういう具体例を教えてほしいです。
758(3): (JP 0Hd6-Y82R) 2018/09/26(水)15:12 ID:nKPhFdqbH(1) AAS
C++というかオブジェクト指向の質問かもしれないんですけど
エクセルにデータを書き出すためのクラスがありましてメソッドがざっとこんな感じ
・データをファイルから読み込む
・シート作成(ここで以下のメソッドを呼び出す)
・シートAに書き出す
・シートBに書き出す
︙
省5
789(4): (ワッチョイ 7748-aemA) 2018/09/28(金)10:23 ID:RVKB6eOl0(1/2) AAS
>>783
呼び出されない
右辺値参照は左辺値を受け取らない(原則)
ただしTがテンプレート仮引数の場合と、auto&&の場合は、
右辺値参照で左辺値を受け取れる(特例)
型を推定させた場合に限り、右辺値参照は、
左辺値参照への左辺値参照に変形できる
793(3): はちみつ餃子◆8X2XSCHEME (ワッチョイ bf6f-aemA) 2018/09/28(金)10:39 ID:7KXXqv1B0(3/7) AAS
あ、逆の場合と混同してた。
const T& に rvalue がマッチするんだった。
このあたりのルール、なんか一貫性がない感じがする。
819(3): (ワッチョイ ff5b-/HDE) 2018/09/29(土)00:09 ID:UwfF5QN40(1/2) AAS
>>818
いんや。
オブジェクトにムーブコンストラクタがあって戻り値が右辺値ならコピー回避されるし、戻り値最適化で一切何も起こらない可能性すらある。
て、はちみつが言ってた。
846(3): (アウアウウー Sadb-uZyL) 2018/09/30(日)01:40 ID:CKZYWlYLa(1/3) AAS
>>843
だからmoveいらないって話でしょ
C++のムーブセマンティクスがああなったのは中途半端にスタックを使うスタイルが定着してしまっていて今更ポインタ使えというのは無理があるからで、
本来は所有権の管理さえ適切に行えるようになってさえいればムーブなんか要らんよ
848(4): (ワッチョイ 9fbd-G9Ql) 2018/09/30(日)06:48 ID:d4gXl3Bi0(1/10) AAS
>>846
ポインタ使え思想はすでにC#とかなクラスが参照型な言語で実現されているが
オブジェクトの解放にガベージコレクタが要る言語になった
これはガベージコレクタ無し・所有権の無条件移動だけだと、次のようなケースで早速話が破綻するから仕方が無い
void bar(int n) {
std::unique_ptr<Foo> a(new Foo());
for (int i = 0; i < n; i++) {
省6
849(3): (ワッチョイ 9fbd-G9Ql) 2018/09/30(日)06:53 ID:d4gXl3Bi0(2/10) AAS
それにポインタ使え思想だと次のようなケースでBaz::m_c[i]のBar:m_b[j]の:Foo::m_aのアクセスに藻前らどんだけ間接参照するんですかと、
class Foo {
SomeClass m_a;
};
class Bar {
Foo m_b[100];
};
省3
854(4): (ワッチョイ 9fbd-G9Ql) 2018/09/30(日)09:46 ID:d4gXl3Bi0(5/10) AAS
>>853
いやスマン言い方がまずかったそういう意味ではない
確かに
>所有権を移動するかどうかはほぼ例外なくオブジェクト生成時点で予め分かってるんだから、
というのは真だが、ライブラリのインターフェースに解放が必要なオブジェクトのmoveなど認めたら有り得ないコストが生じるという話
func1()の制作者が所有権を寄越すことを強制した(そういうインターフェース仕様にしてしまった)場合、
func1()を使う人はfunc1()に所有権を渡さねばならない。この結果、
省5
925(3): (ワッチョイ 1708-ClIk) 2018/10/03(水)03:04 ID:plRFOjxw0(1) AAS
>>912 >>915
ありがとうございました。やっぱそうだったんですね
しかし検索しても全然出てこないというかどう検索したら良いものか。C++98とかの時代になるんですかねぇ
939(3): (オッペケ Sr4b-N9wp) 2018/10/03(水)23:26 ID:T5RLH7Axr(2/2) AAS
>>937-938
vector ってメモリ空間連続ですか?
だったら迷わずこれ使うんですが
947(4): (ワッチョイ de8a-F3g9) 2018/10/04(木)03:00 ID:SxiNReMs0(1) AAS
変数名とかクラス名にめちゃくちゃ毎回悩む
従業員の名前、社員番号、階級みたいなクラスを作るときのクラス名とかって普段どうしてる?
Employeeだけで良いのだろうか
DataとかInfoとか意味のあるようでないような命名が頭をよぎってしまう
仮に従業員をEmployeeとしたときに会社名と従業員リストのDictionary<string, List<Employee>>の変数名とかどうすりゃええねんってなる
CompanyではないしCompanyDataだとそれっぽいが的確でもなさそうだし...
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.092s