質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

2回答

1291閲覧

ウェブカメラの映像から取得した映像をOpencvで分割して1つずつウィンドウにリアルタイムで表示する。

ecobag

総合スコア3

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2023/03/29 02:45

編集2023/03/29 02:56

実現したいこと

イメージ説明
opencvを使ってウェブカメラの映像を4分割して、1つずつウィンドウに表示する。
(可能であれば出力するウィンドウは大きさを変えられるようにしたい)

前提

Microsoft Visual StudioでOpenCVを使うための練習をしています。
ウェブカメラの映像を分割して表示するプログラムを作ったところ、
以下のエラーメッセージが発生しました。解決策のご教授お願い致します。
個人的にはstdafx.hのパスが悪さをしていると思っています。

発生している問題・エラーメッセージ

エラー (アクティブ) E0020 識別子 "roi4" が定義されていません syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 30
エラー (アクティブ) E0020 識別子 "roi3" が定義されていません syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 29
エラー (アクティブ) E0020 識別子 "roi2" が定義されていません syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 28
エラー (アクティブ) E0020 識別子 "roi1" が定義されていません syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 27
エラー (アクティブ) E1696 ソース ファイルを開けません "stdafx.h" syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 1
エラー C1083 include ファイルを開けません。'stdafx.h':No such file or directory syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 1

該当のソースコード

#include <stdafx.h>
#include <opencv2/opencv.hpp>
#pragma comment(lib, "opencv_world454d.lib")
using namespace std;
using namespace cv;

int main()
{
VideoCapture cap(0); // ビデオファイルを開く
if (!cap.isOpened()) { // ビデオファイルが開けないとき
cout << "ビデオファイルが開けません。";
cin.get();
return -1;
}

Mat src, roi; // Matオブジェクト生成 while (1) { // ループ開始 cap >> src; // 1フレーム読み込み if (src.empty()) break; // フレームが空のとき終了 //src1を 4分割するための点を定義 vector<Point> p = { { 0, 0 },{ src.cols / 2, 0 },{ 0, src.rows / 2 },{ src.cols / 2, src.rows / 2 } }; roi1 = src(Rect(0, 0, src.cols / 2, src.rows / 2)); roi2 = src(Rect(src.cols / 2, 0, src.cols / 2, src.rows / 2)); roi3 = src(Rect(0, src.rows / 2, src.cols / 2, src.rows / 2)); roi4 = src(Rect(src.cols / 2, src.rows / 2, src.cols / 2, src.rows / 2)); imshow("入力映像", roi1); // 1フレーム表示 imshow("入力映像", roi2); imshow("入力映像", roi3); imshow("入力映像", roi4); if (waitKey(30) == 27) break; // キー入力待機(30ms) } return 0;

}

試したこと

VC++ディレクトリのインクルードディレクトリに
"C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\atls\stdafx.h"
もしくは
"C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h"
↪直らず。

stdaf.hの””の部分を<>に置き換えた
↪直らず。

補足情報(FW/ツールのバージョンなど)

使用ソフト
・Microsoft Visual Studio

Opencv Ver.4.5.4
Cドライブ直下に保存

stdaf.hは上記の2つがありました。

#include <stdafx.h>を
#include <C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\atls\stdafx.h>
に変更
↓以下のエラーメッセージが追加で表示される。
エラー (アクティブ) E0276 名前の後に '::' を付けることができるのはクラス名または名前空間名だけです syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5552
エラー (アクティブ) E0276 名前の後に '::
' を付けることができるのはクラス名または名前空間名だけです syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5616
エラー (アクティブ) E0276 名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5640

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ecobag

2023/03/29 02:57

質問の修正をしました。
episteme

2023/03/29 03:31

roi1~roi4はどこで定義/宣言してるんです?
ecobag

2023/03/29 04:00

vector<Point> p = {{ 0, 0 },{ src.cols / 2, 0 },{ 0, src.rows / 2 },{ src.cols / 2, src.rows / 2 }}; です。
episteme

2023/03/29 04:03

それは p であって roi1~roi4 じゃないでしょ?
ecobag

2023/03/29 04:11

roi1~4の宣言定義ないってことですよね Mat src roiを Mat src, roi1,roi2,roi3,roi4にすればいでしょうか
episteme

2023/03/29 04:15 編集

> roi1~4の宣言定義ないってことですよね エラー・メッセージから明らか。 > Mat src, roi1,roi2,roi3,roi4にすればいでしょうか やってみればわかる。
ecobag

2023/03/29 04:28

やってみたらプログラム上の赤い波線は消えました。 現在出ているエラーは下記の通りになります。 エラー (アクティブ) E0020 識別子 "CComTypeInfoHolder" が定義されていません syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5435 エラー (アクティブ) E0020 識別子 "CComTypeInfoHolder" が定義されていません syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5553 エラー (アクティブ) E0020 識別子 "CComTypeInfoHolder" が定義されていません syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5617 エラー (アクティブ) E0020 識別子 "CComTypeInfoHolder" が定義されていません syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5641 エラー (アクティブ) E0276 名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5552 エラー (アクティブ) E0276 名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5616 エラー (アクティブ) E0276 名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlcom.h 5640 エラー C1083 include ファイルを開けません。'stdafx.h':No such file or directory syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 1 エラー (アクティブ) E0864 CAtlModuleT はテンプレートではありません syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\atlbase.h 4688 まず直すべきはstdafx.hのincludeファイルが開けないところからですよね。 stdafx.hをパソコン内で探すと "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\atls\stdafx.h"  と "C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h"があって、前者が現在のエラーを出していて 後者だと エラー (アクティブ) E1696 ソース ファイルを開けません "dia2.h" syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h 17 エラー C1083 include ファイルを開けません。'stdafx.h':No such file or directory syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 1 となるのですが、今はサンプルではなくツールを呼び出したいから前者のままでよいのでしょうか。
1T2R3M4

2023/03/29 04:48

#includeの””と<>の違いや 構成プロパティの各設定値が何の役割をするか理解していますか。
ecobag

2023/03/29 05:13

質問ありがとうございます。最近プログラミングを始めたばかりですので、 詳しく理解できているとはいいがたいです。 <>はOpencvをダウンロードしたときに環境変数などで設定したパスから探してくれるやつで ””は指定されたファイルの中から探しますよーって感じだとおもってます。 構成プロパティのすべての設定値の役割は分かりませんが、プログラム上で使うものを準備するためのものだと思います。
episteme

2023/03/29 05:22

> <>はOpencvをダウンロードしたときに環境変数などで設定したパスから探してくれるやつで ””は指定されたファイルの中から探しますよーって感じだとおもってます。 ちがうよ。
episteme

2023/03/29 06:15

「そこ↑の説明」と「あなたの解釈」が異なっています。
fana

2023/03/29 09:04

> OpenCVを使うための練習 をするよりも前に, C++のプログラミング自体を相応に練習(というか学習)する段階を経る必要があると思う. そういうのをすっ飛ばしてさらに「OpenCVを使う」という面倒な話が追加された状況にいきなりチャレンジしても問題の切り分け等もできずにひたすら遠回りなだけだと思う.
guest

回答2

0

ベストアンサー

動いたよ:

C++

1#include <opencv2/opencv.hpp> 2 3struct division { 4 cv::Rect top_left; 5 cv::Rect top_right; 6 cv::Rect bottom_left; 7 cv::Rect bottom_right; 8 cv::Size size; 9}; 10 11int main() { 12 cv::VideoCapture cap(0); 13 if ( !cap.isOpened() ) return -1; 14 15 cv::Mat src; 16 division div; 17 18 cap >> src; 19 div.size = cv::Size(src.cols, src.rows); 20 int x = src.cols / 2; // x, y が 21 int y = src.rows / 2; // 四分割の中心 22 div.top_left = cv::Rect(cv::Point(0,0), cv::Point(x, y)); 23 div.top_right = cv::Rect(cv::Point(x,0), cv::Point(div.size.width,y)); 24 div.bottom_left = cv::Rect(cv::Point(0,y), cv::Point(x, div.size.height)); 25 div.bottom_right = cv::Rect(cv::Point(x,y), cv::Point(div.size.width,div.size.height)); 26 27 while ( true ) { 28 cap >> src; 29 if ( src.empty() || cv::waitKey(30) == 27 ) break; 30 cv::imshow("source", src); 31 cv::imshow("top-left", src(div.top_left )); 32 cv::imshow("top-right", src(div.top_right )); 33 cv::imshow("bottom-left", src(div.bottom_left )); 34 cv::imshow("bottom-right", src(div.bottom_right)); 35 } 36 cv::destroyAllWindows(); 37}

投稿2023/03/29 05:12

episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ecobag

2023/03/29 05:39

ありがとうございます。 出力されたウィンドウの大きさを変えられるようにしたい場合は cv::imshow()をcv2.namedWindow()に置き換えればよいでしょうか。
episteme

2023/03/29 05:50 編集

「cv::imshow()をcv2.namedWindow()に置き換えればよい」と考えた理由は? 説明のできないコードは一行たりとも書いてはならない。 ...てかやってみたらいいじゃん。
ecobag

2023/03/29 06:05

こちらを参考にできると思いました。 https://qiita.com/y_kani/items/69d26854d5f7318e8f44 mshow()で生成されるウィンドウにはデフォルトでcv2.WINDOW_AUTOSIZEというフラグが設定されているそうなので 実際に変えてみたのですが cv2.namedWindow(("source", src),cv2.WINDOW_NORMAL);だと cv2に赤線が出てしまいます。つまり定義されてないということ。 そしてcv2を定義したら cv::Matにメンバー"namedWindow"がありません と cv::Matにメンバー"WINDOW_NORMAL"がありません。 が 表示されました。
ecobag

2023/03/29 06:40

Pythonでしたか・・・ resize(img, img, Size(), X, Y);を使って分割する前に取得した映像を大きくしたいのですが、大きさを2倍に、resize、Sizeを定義して resize(cap, cap, Size(),2.0, 2.0);としたのですが、 エラー (アクティブ) E0304 オーバーロードされた関数 "cv::Mat::operator()" のインスタンスが引数リストと一致しません syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 18 と表示されました。
ecobag

2023/03/29 06:59

途中送信失礼しました。 質問したかったのはresizeの使い方について、どのタイミングで行うのが正しいのか、 また、現在のプログラムの場合、imgに該当するのはcapで問題ないのでしょうか。
episteme

2023/03/29 07:12 編集

> 質問したかったのはresizeの使い方について、どのタイミングで行うのが正しいのか カメラから取り込んだ直後 もしくは 表示の直前 ではなかろーか。 > 現在のプログラムの場合、imgに該当するのはcapで問題ないのでしょうか。 あなたが書いたコードに関してはあなたが一番理解しているはずなので、僕に訊かれましても...
ecobag

2023/03/29 07:17

返信ありがとうございます。カメラから取り込んだ直後に入れてみます。 >あなたが書いたコードに関してはあなたが一番理解しているはずなので、僕に訊かれましても... 説明の仕方が良くありませんでしたね、すみません。 現在のプログラムとは、この回答にある貴方が作ったプログラムについてです。
episteme

2023/03/29 07:20

cap は VideoCapture (画像取り込み器) であり、画像ではありません。
ecobag

2023/03/29 07:54

ではdivでしょうか?div.top_left のように出力されるウィンドウの名前についているので。 あと、大きさを変更するプログラムについてお聞きしたいのですが、調べてみたところ resize(img, img, Size(), X, Y)を使う方法、 double scaleを使う方法、DrawExtendGraph関数を使う方法、 様々な方法が存在することが分かったのですが、おすすめの方法がありましたら教えてください。
episteme

2023/03/29 08:04 編集

いや...本コード中 画像と思しきものが cv::Mat src; 以外にあるんですか? div.top_left(等)の型が(Rectであり)画像ではないことがコードから明らかじゃないですか? >おすすめの方法がありましたら教えてください。 まずはresize使って期待通りの動作を目指せばいい。他の試したけりゃそのあとで。
ecobag

2023/03/30 01:32

resizeを使ってみました。 #include <opencv2/opencv.hpp> struct division { cv::Rect top_left; cv::Rect top_right; cv::Rect bottom_left; cv::Rect bottom_right; cv::Size size; }; int main() { cv::VideoCapture cap(0); if (!cap.isOpened()) return -1; cv::Mat src; cv::Mat src_resize; division div; cap >> src; //cv::resize(入力画像、出力画像、Size(),拡大率、拡大率) cv::resize(src, src_resize, cv::Size(), 4.0, 4.0); div.size = cv::Size(src_resize.cols, src_resize.rows); int x = src_resize.cols / 2; // x, y が int y = src_resize.rows / 2; // 四分割の中心 div.top_left = cv::Rect(cv::Point(0, 0), cv::Point(x, y)); div.top_right = cv::Rect(cv::Point(x, 0), cv::Point(div.size.width, y)); div.bottom_left = cv::Rect(cv::Point(0, y), cv::Point(x, div.size.height)); div.bottom_right = cv::Rect(cv::Point(x, y), cv::Point(div.size.width, div.size.height)); while (true) { cap >> src; if (src.empty() || cv::waitKey(30) == 27) break; cv::imshow("source", src_resize); cv::imshow("top-left", src_resize(div.top_left)); cv::imshow("top-right", src_resize(div.top_right)); cv::imshow("bottom-left", src_resize(div.bottom_left)); cv::imshow("bottom-right", src_resize(div.bottom_right)); } cv::destroyAllWindows(); } エラーの表示もなく、出力の際にもウィンドウの大きさなどは問題なかったのですが、 映像ではなく画像として出力されてしまいました。resizeでは映像の分割表示は無理なのでしょうか?
episteme

2023/03/30 01:39

> resizeでは映像の分割表示は無理なのでしょうか? 間違ってる/バグがあるとは思わないんだ...
ecobag

2023/03/30 01:50 編集

とても弱気になってます、すみません。 エラーや警告が出れば間違っていると分かるのですが エラーの表示もなく出力されてしまうと何がどうして間違っているのかが分からなくて困ってしまいます。。。 どうすればよいでしょうか。
episteme

2023/03/30 02:07 編集

while-loop 内で src_resize が更新されていない。 > エラーの表示もなく出力されてしまうと何がどうして間違っているのかが分からなくて困ってしまいます。。。 書いたコードがイッパツで動くなら OpenCVを使うための"練習" なんか要らんやないの。 > どうすればよいでしょうか。 観察する→推論/考察する→修正する の繰り返し。 画像に変化がない →描画しているのはsrc_resizeだ →src_resizeはsrcを拡大したものだ →拡大しているか? ...してないね。 →解決。
ecobag

2023/03/30 02:24 編集

無事に映像を表示させることが出来ました。 ありがとうございます。 初心者ということを抜きにしても、あまりにも勉強不足で申し訳ありません。 苦手ではありますが、プログラムについてこれからもっと勉強していきます。 最後まで付き合っていただき本当にありがとうございました。 来年度から本格的に勉強したいと強く思いました。c++とOpencvについて学び、 精一杯努力したいと思います。
guest

0

#include <stdafx.h>

まず, 何故あなたはコレを書いたのですか?
っていうあたりから考え直すと良いのではないでしょうか.

必要ないなら書かなければ良いだけ と見えるのですが,書かないと問題が起きるのですか?
(この記述を取っ払ったら何か問題が起きるのであれば,その旨を述べるべき)

例えば,私の環境でVS2019でC++コンソールアプリのプロジェクトを生成してみると,生成されたソースファイルの初期状態は以下となっています(コメント群を除く).

c++

1#include <iostream> 2 3int main() 4{ 5 std::cout << "Hello World!\n"; 6}

プロジェクトの設定を見るとプリコンパイル済ヘッダは使用しない設定になっています.
そのままで良いならば#include "stdafx.h" だとか #include "pch.h" だとかいう記述を付け加える必要は無いわけで.


エラー (アクティブ) E0020 識別子 "roi4" が定義されていません

こちらについてはエラーメッセージの通りであり,それ以外の何者でも無いようにしか見えません.
定義していない物をあなたが唐突にコード内に登場させたのでエラーになっているだけです.

投稿2023/03/29 04:17

fana

総合スコア11658

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ecobag

2023/03/29 04:41

回答ありがとうございます。 質問された方のアドバイスを元に修正したプログラムが以下の通りになります。 roi1から4の定義を加えたことでエラー表記はなくなりました。 #include <C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h> #include <opencv2/opencv.hpp> #pragma comment(lib, "opencv_world341d.lib") using namespace std; using namespace cv; int main() { VideoCapture cap(0); // ビデオファイルを開く if (!cap.isOpened()) { // ビデオファイルが開けないとき cout << "ビデオファイルが開けません。"; cin.get(); return -1; } Mat src, roi1,roi2,roi3,roi4; // Matオブジェクト生成 while (1) { // ループ開始 cap >> src; // 1フレーム読み込み if (src.empty()) break; // フレームが空のとき終了 //src1を 4分割するための点を定義 vector<Point> p = { { 0, 0 },{ src.cols / 2, 0 },{ 0, src.rows / 2 },{ src.cols / 2, src.rows / 2 } }; roi1 = src(Rect(0, 0, src.cols / 2, src.rows / 2)); roi2 = src(Rect(src.cols / 2, 0, src.cols / 2, src.rows / 2)); roi3 = src(Rect(0, src.rows / 2, src.cols / 2, src.rows / 2)); roi4 = src(Rect(src.cols / 2, src.rows / 2, src.cols / 2, src.rows / 2)); imshow("入力映像", roi1); // 1フレーム表示 imshow("入力映像", roi2); imshow("入力映像", roi3); imshow("入力映像", roi4); if (waitKey(30) == 27) break; // キー入力待機(30ms) } return 0; } プロジェクトの設定を見るとプリコンパイル済ヘッダは使用しない設定になっていました。 >そのままで良いならば,#include "stdafx.h" だとか #include "pch.h" だとかいう記述を付け加える必要は無いわけで 先ほどのプログラムにおいて #include <C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h>を消して実行したところ、 エラー (アクティブ) E1696 ソース ファイルを開けません "dia2.h" syuukyoku C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h 17 エラー C1083 include ファイルを開けません。'stdafx.h':No such file or directory syuukyoku C:\Users\PC70R183\source\repos\syuukyoku\syuukyoku\syuukyoku.cpp 1 と出ました。当初はstdafx.hを開くためにプリコンパイル済ヘッダを使用していましたが、 やはり付け加えないほうが良いのでしょうか。
episteme

2023/03/29 05:18 編集

> 当初はstdafx.hを開くためにプリコンパイル済ヘッダを使用していましたが、 本末転倒。プリコンパイル済ヘッダの機能を使うために #include "stdafx.h" する。(そして"プリコンパイル済ヘッダを使う"設定をする) 不要なら #include しない(するべきではない) > #include <C:\Program Files\Microsoft Visual Studio\2022\Community\DIA SDK\Samples\DIA2Dump\stdafx.h> 得体のしれないヘッダを #include しちゃなんねぇよ。
fana

2023/03/29 08:51

(質問へのコメント欄や他回答のコメント欄を見るに何やら進んでいる?ようなので)現状がどうなってるのか不明ですが, とにかく【要らんことは一切しない】こと, 言い換えれば, 最初の状態(新規プロジェクト作成状態)から【必要な作業だけを その意味を理解した上で実施していく】ことを徹底することから始めるべきであろう,と思う. あと,(ググって出てきたコードが C++ なのか否かくらいは判断付く程度に)最低限のC++の文法を学ぶべき.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問