问题标签 [class-constructors]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
173 浏览

kotlin - 内联关键字在 Kotlin 类构造函数中有效吗?

假设你有 2 个 Kotlin 类

注意注释掉的inline关键字 in RemoteControl。取消注释它不会在 Intellij 中产生错误。

这是有效的 Kotlin 代码吗?它有什么作用?

我的期望是它相当于

但它似乎没有做任何事情。

我正在使用 Kotlin 1.3.72 和 Android Studio 4.0.1

0 投票
1 回答
125 浏览

javascript - Javascript类构造函数未按预期设置类变量

我正在尝试在我用来将数据拉入我的反应应用程序的 javascript 帮助程序类中按环境设置 API 端点。它看起来像这样:

它会像这样使用:

当我到达断点时,我可以单步执行构造函数,并且各个端点似乎都按预期设置。但是当fetchData调用该方法时,SupportEndpoint(和任何其他端点)是undefined并且 ajax 调用失败并出现 404。

0 投票
1 回答
96 浏览

c++ - 自定义向量类的构造函数,将额外的垃圾值分配给指针

你好,我又遇到了另一个向量类问题。

这是我的 .CPP 文件

这是我的 .HPP 文件

还使用这些功能...

...

...

...

和...

我的主要做这个...

myString 只是一个自定义字符串类。它就像一个普通的字符串类。

当我运行 main 时,我希望 v1 能够保存 a、b 和 c。和 v2 来保存 d、e 和 f。但这就是我得到的...

ap÷bp÷cp÷

所以看起来它在每个字符之后用额外的垃圾初始化每个索引。我试过不使用reserve() 和uninitialized_copy 直接初始化,它工作正常。但是,我的教授要求我使用这些令人困惑的内存管理功能。我假设我错误地使用了这些函数,但是当编译器没有给我任何错误时,很难知道要修复什么。

如果有人可以帮助我了解我做错了什么以及为什么我会看到垃圾值,我将非常感激。

谢谢!

0 投票
1 回答
151 浏览

c++ - 如果可以使用 get 和 set,为什么还要使用构造函数?

OOP 让我很头疼 :( 因为我了解构造函数的工作原理,但我不明白它们的用途。

我有一个Player看起来像这样的类:

在那里使用构造函数(我不知道它的作用或用途)我可以使用set_nameget_name方法来设置名称 - 并对 health 和 xp 执行相同的操作 - 然后使用函数获取名称。那么,构造函数替换函数???

如果它不替换 set & get 那么它的目的是什么?此外,我可以使用上面相同的构造函数来初始化我的属性并避免垃圾:

但是我也可以这样做:

我不明白,这一切是什么意思?我知道在第一种情况下我正在初始化它,在第二种情况下我说名称 health 和 xp 等于我要设置的任何内容。

知道了所有这些信息,我仍然不知道什么是构造函数以及我应该将它用于什么。这很令人困惑。

0 投票
0 回答
40 浏览

c++ - 为什么在成员初始化器列表中初始化数组时不需要括号?

例如,我有:

这有效,但如果我尝试使用括号:

为什么在成员初始化器列表中初始化数组时不需要括号?这只是语法吗?这种初始化数组的行为是否在其他任何地方都可以找到?

0 投票
1 回答
53 浏览

javascript - 在 javascript 类构造函数中声明变量与在所述构造函数中调用的方法是否存在有意义的性能差异?

我对 JS 和 stackoverflow 真的很陌生,但对编码并不陌生,所以如果这已经在某个地方得到了回答,请原谅我。

这样做的原因只是为了提高班级的“整洁度”。我想知道这样做是否会在可读性方面进行性能权衡。

为了更清楚:

这样做是否会造成性能损失:

而不是这样做:

我对阅读 Google 的 js 样式指南的解释是,他们应该始终在构造函数中声明类变量,因为在另一个方法中声明类变量的计算成本更高,但是当类方法定义和/或更新每个类变量时,情况仍然如此毫无例外。

0 投票
1 回答
43 浏览

c++ - C++ 类、指针、构造函数、分段错误、二维数组

.h 文件

初始化然后分配有什么区别Class (*1dArrayObjectPtr)[size] = nullptr;

.cpp 文件

或者:

为什么当我访问时顶部选项会导致分段错误而底部不会:

*(*(1DArrayObjectPtr+i)+j) 或者 1DArrayObject[i][j]

如果我传递1DArrayObjectPtr给一个新类,我是否能够迭代相同的?:

迭代为*(*(newClassPtr+i)+j)newClassPtr[i][j]

还是我将 1dpointer 从 2D 数组更改为其他东西而没有意识到?

0 投票
0 回答
44 浏览

class - 解释这个语法 Distance() :meter(0) {}

#include 使用命名空间标准;

类距离 { 私人: int 米;

};

0 投票
2 回答
84 浏览

c++ - 构造函数与赋值 c++

在试图找出构造函数时,我有一个巨大的脱节。我的问题是:具有初始化列表的构造函数是否替换了类的 set 方法?例如:

是否会使用带有初始化列表的构造函数,类似于:Rock::Rock(double): Weight(w) {}使用 set 方法替换?

0 投票
1 回答
43 浏览

c++ - cpp中的“new”返回什么,我们可以使用构造函数为对象变量赋值吗?

我正在尝试使用 cpp 在 BST 中插入数据。我使用了以下代码:

Node 类有一个构造函数,它将给定的数据分配给 data 并将 NULL 分配给左右。当“Watch Here”行被评论时,我无法遍历树,但是当它被取消评论时,我能够成功地遍历。不是temp = new Node(data) 一样temp->data = data吗?