gpt4 book ai didi

c++ - 指针问题.. ( C++ )

转载 作者:太空宇宙 更新时间:2023-11-04 14:59:14 25 4
gpt4 key购买 nike

就在我以为我想通了的时候,我得到了一个异常处理错误。问题:问题是私有(private)成员丢失了构造函数之外的信息。这是我的类定义

代码:

class ClassType
{
private:
char *cPointer;
int length;

public:
ClassType();
// default constr. needed when allocating in main.
ClassType( const ClassType* );
char otherFunc();
};

类类型.cpp:

"#include ClassType.h"

ClassType( const ClassType* )
{
cPointer = ClassType->cPointer;
length = ClassType->length;
}

ClassType::ClassType( const char *myVar )
{
cPointer = new char[ strlen( myVar ) + 1 ] //+1 for trailing '\0'
strcpy( cPointer, myVar );
length = strlen( cPointer );
}

char ClassType::otherFunc()
{
cPointer; // Nothing is shown when debugging..
cPointer = "MyPointer"; // Results in acrash
length = 5; // Results in a crash
}

// The main function is working properly.

最佳答案

  1. 这不是有效的 C++ 代码。
  2. 如果你正在使用 C++,你不应该使用 std::string 作为字符串?
  3. 基于另一个的构造函数实例应该是 ClassType(const
    类类型& rhs)

关于c++ - 指针问题.. ( C++ ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/762752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com