小编Xin*_*ing的帖子

C++重载运算符两次,一次返回非const引用和另一个const引用,有什么偏好?

我使用相同的参数列表重载操作符两次.但具有不同的返回类型:

T& operator()(par_list){blablabla}    
const T& operator()(par_list){blablabla}
Run Code Online (Sandbox Code Playgroud)

所以当我调用()运算符时,将根据什么偏好或情况调用哪个函数?我知道如果我在const函数下调用()它必须是const T&one.

我只是好奇C++如何处理这种情况以及默认偏好如何工作.

谢谢

c++ const reference operator-overloading operator-keyword

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

我应该何时设置GL_TEXTURE_MIN_FILTER和GL_TEXTURE_MAG_FILTER?

根据定义,当纹理化的像素映射到大于一个纹理元素的区域时,使用GL_TEXTURE_MIN_FILTER.

假设我有一个1024*768分辨率的纹理,我想将它映射到一个矩形.使用以下公式设置投影矩阵:

glOrtho(0, 1024, 0, 768, 0, 1);
Run Code Online (Sandbox Code Playgroud)

并且矩形设置为:

glTexCoord2f(0.0f, 0.0f); glVertex3f(0.0f, 0.0f, 0.0f);
glTexCoord2f(1.0f, 0.0f); glVertex3f(1024.0f, 0.0f, 0.0f);
glTexCoord2f(1.0f, 1.0f); glVertex3f(1024.0f, 768.0f, 0.0f);
glTexCoord2f(0.0f, 1.0f); glVertex3f(0.0f, 768.0f, 0.0f);
Run Code Online (Sandbox Code Playgroud)

根据当前配置,我的理解是矩形上的每个像素都映射到纹理中的一个像素.

然而在测试之后我发现MIN_FILTER正在为这个配置工作.即使我将矩形的大小加倍,即2048*1536,并且在视口中只显示左下角,它仍然是MIN_FILTER正在运行.

在这种情况下,我个人的理解是,视口中的每个像素只映射到纹理中的四分之一像素,为什么它仍然在MIN_FILTER工作?

为了测试哪个过滤器正在工作,我只是注释掉设置该过滤器的行,看看结果是否错误.如果我注释掉MIN_FILTER设置行,结果将是完全黄色,因为我没有设置纹理的最大级别以符合其级别.但是如果我注释掉MAG_FILTER行,结果仍然是正确的.

c++ opengl textures

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

Java 11 SSL 异常:无法找到请求目标的有效证书路径

在尝试将我的一个应用程序从 java 8 升级到 java 11 期间,我遇到了一个奇怪的 SSL 异常:“无法找到有效的认证”

此应用程序的配置会使用包中的默认 jdk / jrecacerts覆盖,因此在升级之前和之后,密钥存储中的证书应该相同(这也可以使用 进行验证):cacertsca-certificates-javakeytools

# java 8
ls -l /usr/lib/jvm/java-1.8.0/jre/lib/security/cacerts
lrwxrwxrwx 1 root root 41 Sep 11 22:52 /usr/lib/jvm/java-1.8.0/jre/lib/security/cacerts -> /etc/pki/java/cacerts

# java 11
ls -l /usr/lib/jvm/jdk-11.0.2/lib/security/cacerts
lrwxrwxrwx 1 root root 21 Oct 29 21:22 /usr/lib/jvm/jdk-11.0.2/lib/security/cacerts -> /etc/pki/java/cacerts
Run Code Online (Sandbox Code Playgroud)

调查了几天,但我没有得到任何结果。我认为这可能是由于版本之间的SunJSSE安全性变化引起的,但我无法确认。Provider1.811.0

我对java安全性不熟悉,想寻求帮助。该示例已简化为该项目,并且重现此问题的说明位于 README.md

异常调用栈:

io.netty.handler.codec.DecoderException: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested …
Run Code Online (Sandbox Code Playgroud)

java ssl ssl-certificate java-security java-11

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