c++ - 使用未定义它们的构造函数赋予属性值(Matrix(int,int))

标签 c++ class constructor declaration

如果有一个构造函数就这样:Matrix(int, int);

如何给类的属性赋值?例如:

Matrix::Matrix(int, int)
{
    columns= //(and here what? If there is no reference I do not know what to assign it for)

}

我知道只写 Matrix(int i, int j) 更容易,但是如果只有“int”怎么办?

最佳答案

这个

Matrix(int, int);

只是一个构造函数声明。无需指定参数名称,因为它们未在声明中使用。指定参数的类型就足够了。

但是在构造函数定义中,您需要指定参数的名称。例如

Matrix::Matrix(int rows, int cols)
{
    //...
}

例如,您可以在表达式中使用这些参数名称来初始化类的数据成员。

关于c++ - 使用未定义它们的构造函数赋予属性值(Matrix(int,int)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42214846/

相关文章:

constructor - D 构造函数中的不变性

c++ - 为什么我不能将 constexpr 与 lambda 函数一起使用?

c++ - C++中的队列STL使用循环数组或链表实现队列

javascript - 如何创建基于以 "_"开头的属性名称将所有类属性设置为不可枚举的 Typescript 装饰器?

php - 在类声明中使用外部对象 - PHP

c++ - 当两个成员都在同一个类中时出现错误 "a nonstatic member reference must be relative to a specific object"

c++ - 没有参数的构造函数不起作用

c++ - 在每个源文件中包含一个头文件

c++ - 查找子字符串出现的次数

c++ - 为什么构造函数/析构函数被调用一次?