巨兔12138 发表于 2020-9-12 14:46:51

定义构造函数时使用参数初始化表,无法对指针类型参数赋值

#include<iostream>

using namespace std;

class String
{
private:
        char* p;
public:
        String(char* str);p(str){ }
};
定义构造函数Siring时,使用参数初始化表,令p(str)
但是编译器报错,是因为不能这么写吗,各位大神给指导下吧

sunrise085 发表于 2020-9-12 15:03:46

本帖最后由 sunrise085 于 2020-9-12 15:08 编辑

为什么p前面会有个分号,应该是冒号
#include<iostream>

using namespace std;

class String
{
private:
      char* p;
public:
      String(char* str):p(str){ };//这里错啦
};
页: [1]
查看完整版本: 定义构造函数时使用参数初始化表,无法对指针类型参数赋值