小编Hov*_*yan的帖子

使用指令与使用声明

您能解释一下为什么此代码有效并打印16吗?

#include <iostream>

namespace X {
int  p = 5;
}
namespace Y {
int  p = 16;

using namespace X;
}

int main()
{
std::cout << Y::p;
}
Run Code Online (Sandbox Code Playgroud)

以及为什么这段代码会引发多重声明错误

#include <iostream>

namespace X {
int  p = 5;
}
namespace Y {
int  p = 16;

using X::p;
}

int main()
{
std::cout << Y::p;
}
Run Code Online (Sandbox Code Playgroud)

我听说using指令不仅仅是使用任何名称的声明的过程,因为它的工作方式似乎有所不同

但是我不明白为什么,你能给出一些详细的解释吗?

同样,这可以正常打印16,如果我仅使用X :: p的声明替换指令,则会抛出相同的错误

 #include <iostream>

namespace X {
    int  p = 5;
}

int  p = 16;

using namespace X;

int …
Run Code Online (Sandbox Code Playgroud)

c++ scope namespaces using

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

Kubernetes NodePort 网络如何在多节点集群上工作?

我是 kubernetes 的新手,我试图了解当 NodePort 向外界公开端口时 kubernetes 网络是如何工作的。

假设我们的 kubernetes 集群中有两个节点,分别称为 Node1 和 Node2。我们在 Node2 上部署了一个 pod。

然后我们为这个 Pod 创建一个 NodePort 服务。为了简单起见,我们假设所有端口(targetPort、nodePort、port)都是 3000。现在,一个数据包到达 Node1 的端口 3000(没有部署 pod)。据我了解,iptables 规则规定该数据包将发送到 Node2 上的 pod。我的问题是 pod 收到数据包时看到的 IP 是什么,以及它的响应数据包如何从外界返回到我们的初始客户端。

networking kubernetes

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

从一个左值的对象调用成员是否返回左值?

我正在学习Lipman的C++入门第5版,我有一个问题.在那本书中写道:

如果从中获取成员的对象是左值,则点运算符产生左值; 否则结果是右值.

string x = "Hello World";
x.size() = 20; // I get an error saying that left-hand operand should be an l-
               //  value
Run Code Online (Sandbox Code Playgroud)

有谁能解释为什么?

c++

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

标签 统计

c++ ×2

kubernetes ×1

namespaces ×1

networking ×1

scope ×1

using ×1