以下はコードですが、どのようにデバッグするのか分かりません。誰か助けてくれますか?'int *'から 'int'への無効な変換がエラーです。-fpermissive
#include <iostream>
using namespace std;
class CSample
{
int *x;
int N;
public:
//dafualt constructor
CSample(): x(NULL)
{}
void AllocateX(int N)
{
this->N = N;
x = new int[this->N];
}
int GetX()
{
return x;
}
~CSample()
{
delete []x;
}
};
int main()
{
CSample ob1; //Default constructor is called.
ob1.AllocateX(10);
//problem with this line
CSample ob2 = ob1; //default copy constructor called.
CSample ob3; //Default constructor called.
//problem with this line
ob3 = ob1; //default overloaded = operator function called.
}
GetXはint *型かint型のいずれかでなければなりません。コピーコンストラクタも定義されていません。今後、適切に質問の書式を設定し、最小限で完全で検証可能な例を提供してください。 –
"デバッグ方法はわかりません" - [小さなプログラムのデバッグ方法](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)をご覧ください。 )Eric Lippertによると、デバッグ技術に関する素晴らしい記事です。 – EJoshuaS