小编zur*_*fyx的帖子

为什么我们要使用两次引用运算符?

我的问题是指带有类和关键字 this 的指针。

class class1 {
public:
    bool isitme(class1& temp){
        if(this == &temp)
            return true;
        else return false;
    }
};


int main () {
    class1 c3;
    class1* c2 = &c3;
    if(c3.isitme(*c2))
        cout << "c3 == c2"; //it is returning that
    system("pause");
}
Run Code Online (Sandbox Code Playgroud)

上面的代码是有效的,但我不明白的是为什么它只在bool isitme(class1& temp)if(this == &temp)位于同一函数中时才有效isitme()

我的意思是,我们已经在类参数中读取了 temp 的内存块class1& temp,并且应该能够将该内存块与关键字进行比较this。为什么只有当我双重获取引用 ( this == &temp) 时该函数才为 true?

谢谢

c++ pointers reference class

1
推荐指数
1
解决办法
1426
查看次数

'Int'对象不可迭代.但是,它是一个字符串

这是脚本的一部分.它应该在名称之前得到数字,这些数字将始终相同(在这种情况下cows)

cows = "111 cows 222 cows "
for cow in cows.find(" cows "):
    startingpos = cow-4
    print(cows[startingpos:cow])
Run Code Online (Sandbox Code Playgroud)

结果应该是:

111 
222
Run Code Online (Sandbox Code Playgroud)

但是,我得到了

TypeError: 'Int' object is not iterable
Run Code Online (Sandbox Code Playgroud)

即使cows是一个字符串,而不是一个整数,为什么?

python for-loop

1
推荐指数
1
解决办法
533
查看次数

Java - 区别null与空

初始化null或清空有什么区别:

Type name = null;
Type name;
Run Code Online (Sandbox Code Playgroud)

有什么不同吗?

我明白这个例子:

String name = null;
String name = "";
Run Code Online (Sandbox Code Playgroud)

不同之处在于,第一个不会将其初始化为任何值而另一个不会,但前两个之间是否存在差异

java

1
推荐指数
1
解决办法
87
查看次数

Java:自动为每个类创建一个.class文件

假设我有一个 A.java,其中两个类(公共类和私有类)都位于同一文件中。

public class A{
    public static void main(string[] args){
        ...
    }
}

class B{
    ...
}
Run Code Online (Sandbox Code Playgroud)

为什么Java在编译A.java时会自动创建A.class和B.class?

是为了避免此类问题吗?/sf/answers/163573371/

如果 Foo.java 引用 Baz 而不是 Bar,并且我们尝试编译 Foo.java,会发生什么情况?编译失败并出现如下错误:

Foo.java:2:找不到符号符号:class Baz 位置:class Foo private Baz baz;^ 1 个错误

另外,我知道使用 Java 的正确方法是每个类一个文件,但我想知道为什么 Java 这样做。

java

0
推荐指数
1
解决办法
872
查看次数

标签 统计

java ×2

c++ ×1

class ×1

for-loop ×1

pointers ×1

python ×1

reference ×1