実現したいこと
はじめまして。
下記サイトを参考にファイル分割の練習をしていたのですが、エラーが出てコンパイルできません。
▼参照URL
https://monozukuri-c.com/langc-file/
クラス内コンストラクタを消すとエラーは消えますが、コンストラクタを残した状態でコンパイルをしたいです。
環境はMicrosoft Visual Studio2022です。
お手数ですがよろしくお願いいたします。
発生している問題・分からないこと
ファイル分割した際にエラーメッセージが発生します
エラーメッセージ
error
1E0289 コンストラクター "Test::Test" のインスタンスが引数リストと一致しません
該当のソースコード
C++
1▼main.cpp 2#include "sub.h" 3#include "iostream" 4using namespace std; 5 6main(){ 7cout << obj.num << obj.point; 8return 0; 9} 10 11▼sub.cpp 12#include "sub.h" 13 14Test::Test() { 15 num = 0; 16 point = 0; 17} 18 19Test obj = { 10,20 };//ここの「{」の部分にエラーが出ています 20 21▼sub.h 22#pragma once 23 24class Test { 25public: 26 int num; 27 int point; 28 Test();//この一行を消すとエラーが消えます 29}; 30 31extern Test obj;
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
main関数内で、
obj.num = 10;
obj.point = 20;
のようにするとエラーは出ませんでしたが、一度に定義できる方法を探しています。
補足
特になし

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/07/17 05:11
2024/07/17 06:38
2024/07/17 15:47