机器学习ml命名空间不可用是怎么回事?

在学习手写体数字识别过程中,我用的软件是 vs2013 + OpenCv2.4.9 ,ml显示非命名空间名。
#include
#include
#include
#include

using namespace cv;

using namespace ml;

using namespace std;

......

using namespace cv::ml; 吗?

我遇到了这个问题,解决办法是先写using namespace cv;再写using namespace ml;
次序不能颠倒