小编Kev*_*her的帖子

ANOMALY:使用无意义的REX前缀

错误ANOMALY: meaningless REX prefix used是什么意思?我用google搜索,我得到的所有信息都是完全随机的,它与java或avg或minecraft有关(因为java).

但是,在我合并了我的c ++ opengl 4.0图形引擎的几个分支之后,我在Visual Studio控制台应用程序的控制台输出中出现了这个错误,它突然弹出.我可能已经在我写的时间点之间更新了AMD图形驱动程序,所以这可能是一个来源.弹出错误后,深度缓冲测试也突然被禁用.

在visual studio中使用clean和rebuild之后,错误现在消失了,因此我不需要帮助修复错误,但我想知道它的含义以及通常会导致此错误的原因.这让我很好奇,因为我没有找到任何有用的搜索此错误.

c++ opengl visual-studio-2015

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

c ++ 11/14 make_unique std :: string的ambigious重载

有人可以解释如何解决make_unique的ambigious过载警告,其中错误来自及其确切意味着什么(我确实理解什么是一个ambigious重载但是我不确定为什么我得到一个这个特定的代码)?我使用的是c ++ 11,因此我使用了Herb Sutter推荐的模板.

使用它我收到以下错误:

Error   4   error C2668: 'make_unique' : ambiguous call to overloaded function
Run Code Online (Sandbox Code Playgroud)

并将鼠标悬停在visual studio 13中的工具提示上,为我提供了以下方法:

function template "std::enable_if<!std::is_array<_Ty>::value, std::unique_ptr<_Ty,std::default_delete<_Ty>>>::type std::make_unique<_Ty,_Types...>(_Types &&..._Args)"
function template "std::unique_ptr<T, std::default_delete<T>> make_unique<T,Args...>(Args...)
argument types are: std::string
Run Code Online (Sandbox Code Playgroud)

第二个应该是从make_unique模板调用的那个

/* Will be part of c++14 and is just an oversight in c++11
 * From: http://herbsutter.com/gotw/_102/
 */
template<typename T, typename ...Args>
std::unique_ptr<T> make_unique(Args&& ...args){
    return std::unique_ptr<T>(new T(std::forward<Args>(args)...));
}
Run Code Online (Sandbox Code Playgroud)

要转发到的构造函数:

Shader(const std::string& name);
Run Code Online (Sandbox Code Playgroud)

产生错误的代码

std::string _name = "Shader";
std::unique_ptr<Shader> s = make_unique<Shader>(_name); 
Run Code Online (Sandbox Code Playgroud)

c++ templates c++11 c++14

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

如何在Python 3.5中使用unittest.mock模拟导入的库方法?

是否可以在Python 3.5中使用unittest.mock模拟导入模块的方法?

# file my_function.py
import os
my_function():
    # do something with os, e.g call os.listdir
    return os.listdir(os.getcwd())

# file test_my_function.py
test_my_function():
    os = MagickMock()
    os.listdir = MagickMock(side_effect=["a", "b"])
    self.assertEqual("a", my_function())
Run Code Online (Sandbox Code Playgroud)

我期望 os.listdir 方法在第一次调用时返回指定的 side_effect “a”,但在 my_function 内部调用未修补的 os.listdir 。

python unit-testing mocking

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