X



スレを勃てるまでもないC/C++の質問はここで 25 [隔離病棟]©2ch.net
0399デフォルトの名無しさん
垢版 |
2022/12/31(土) 23:42:50.35ID:bCnreZgB
Pythonで以下の記述があり、C++に書き直したいです。

import cv2
cap = cv2.VideoCapture(0, cv2.CAP_DSHOW)

以下のC++から書き直すとどうなりますか?

#include "opencv2/opencv.hpp"
cv::VideoCapture _vidIn{};
0403デフォルトの名無しさん
垢版 |
2024/02/11(日) 02:53:37.58ID:morq3qnL
>>1
フラグを勃てると書いたら実にいやらしい
0404デフォルトの名無しさん
垢版 |
2024/03/11(月) 02:18:46.40ID:rRWPOaAF
strlen()が数え間違えるので、自前でchar*単位で回して数えた。解決。
後になって、それはどう考えてもおかしいだろとコメントアウトしていたstrlen()を戻したら、ちゃんと正常動作していた。

実は今、ブレークポイントを設定していない箇所・・・しかも特定の位置で実行停止すると言う(私は)経験のない事例に困惑しきりで、どこかmalloc()失敗していてメモリ喰い破っているのかな・・・と見直しているのですが、見付からず。
一般論として、ポインタ周りが怪しい、ですよねえ・・・。
それ以外の可能性として、どんな事があるでしょうか。
環境はMicrosoft Visual Studio Community 2022のC++ですが、C言語&DXライブラリで書いています。
0405デフォルトの名無しさん
垢版 |
2024/03/11(月) 05:42:49.72ID:rRWPOaAF
何気ない習慣で、ageてなかった。
0406デフォルトの名無しさん
垢版 |
2024/03/12(火) 16:17:58.25ID:ny/qS6He
エラーがでてるのか?表示してくれてると思うが内容はどうなっているのか?
0407404
垢版 |
2024/03/19(火) 19:03:35.85ID:qI3ILkQW
>>406
エラーや警告は一切ありませんでした。
と言うか解決した今だから言えますが、私が馬鹿でした。

ええと、構造体ポインタに構造体の実体を代入していました。 そらヒープエリアも突き破るってもんで。
こんな感じ。

struct AAA data[2];
struct AAA *aaa;    // *ではなく**
aaa=(struct AAA*)malloc( sizeof(struct AAA*) *2):
aaa[0]=data[0];    // &data[...
aaa[1]=data[1];    // &data[...

プログラムは、(間違った)意図通りにちゃんと動いていたみたいです(笑)。
0408デフォルトの名無しさん
垢版 |
2024/05/03(金) 13:00:20.63ID:Vf2Lxl94
clangは、--targetオプションでターゲットを変更できますが
ひょんなことから、どうも、このオプションを無指定の時の
デフォルト値が、システムにインストールされているmsvcの
バージンによって変化するようなのですが、詳しい方
いらっしゃいませんか。たとえばそれにより、
char16_tがbuilt-in typeになるかどうかに違いが出てきます。
VS2019をインストールしていないとき、clang10やclang16(?)
は、デフォルトでは、char16_tがbuilt-in typeではありません。
このとき、出力された*.llの冒頭に灰化の記述があります:
target triple = "i686-pc-windows-msvc14.0.50727"
ところが、
-fms-compatibility
-fms-compatibility-version=19
を指定すると、char16_tがbuilt-in typeになり、
*.ll の冒頭の記述が変化し、
target triple = "i686-pc-windows-msvc19.0.0"
となります。上記のオプションの代わりにコマンドラインに
--target=i686-pc-windows-msvc19.0.0
と指定してもchar16_tに関してはbuilt-in type になりました。

ここまではいいのですが、不思議なことに、これらのオプションを
全く指定しなくても、なぜか、char16_t が built-in typeになって
いたことがありました。そのときは、インストールした時点で
VS2019がインストールされていたと思います。
今はインストールされていません。
レスを投稿する


ニューススポーツなんでも実況