zoukankan      html  css  js  c++  java
  • js校验

    //待验证
    ////////////////////////////////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////////////////////////////////
    class TJS
    {
    public:
    	templete<typename T1>
    	static bool isValidFn(const Json::Value& m_js, T1 t1)
    	{
    		return isValid(m_js, t1);
    	}
    
    	templete<typename T1, typename T2>
    	static bool isValidFn(const Json::Value& m_js, T1 t1, T2 t2)
    	{
    		return isValid(m_js, t1) 
    			&& isValid(m_js[t1], t2) 
    	}
    
    	templete<typename T1, typename T2, typename T3>
    	static bool isValidFn(const Json::Value& m_js, T1 t1, T2 t2, T3 t3)
    	{
    		return isValid(m_js, t1) 
    			&& isValid(m_js[t1], t2) 
    			&& isValid(m_js[t1][t2], t3) 
    	}
    
    	templete<typename T1, typename T2, typename T3, typename T4>
    	static bool isValidFn(const Json::Value& m_js, T1 t1, T2 t2, T3 t3, T4 t4)
    	{
    		return isValid(m_js, t1) 
    			&& isValid(m_js[t1], t2) 
    			&& isValid(m_js[t1][t2], t3) 
    			&& isValid(m_js[t1][t2][t3], t4)
    	}
    
    	templete<typename T1, typename T2, typename T3, typename T4, typename T5>
    	static bool isValidFn(const Json::Value& m_js, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5)
    	{
    		return isValid(m_js, t1) 
    			&& isValid(m_js[t1], t2) 
    			&& isValid(m_js[t1][t2], t3) 
    			&& isValid(m_js[t1][t2][t3], t4)
    			&& isValid(m_js[t1][t2][t3][t4], t5)
    	}
    
    	templete<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
    	static bool isValidFn(const Json::Value& m_js, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6)
    	{
    		return isValid(m_js, t1) 
    			&& isValid(m_js[t1], t2) 
    			&& isValid(m_js[t1][t2], t3) 
    			&& isValid(m_js[t1][t2][t3], t4)
    			&& isValid(m_js[t1][t2][t3][t4], t5)
    			&& isValid(m_js[t1][t2][t3][t4][t5], t6)
    	}
    private:
    	templete<typename T>
    	static bool isValid(const Json::Value& js, T t)
    	{
    		js.isArray(js) ? (js.size() > t ? true : false) ? isMember(t) : ture ? false; 
    	} 
    }; 
    
    int main()
    {
    	Json::Value jstemp = Json::Value::null;
    	jstemp[1][2]["factory"]["name"][5]["lol"] = "test";
    	
    	tjs::isValidFn(jstemp, 1, 2, "factory");
    	return 0;
    }
    
  • 相关阅读:
    Windows编程系列:Windows中的消息
    python 日志 logging模块
    wx-xcx
    大坑:perspectiveTransform
    在移动硬盘上装系统
    Django
    双边滤波(Bilateral filter)
    Mesh Deformation with Laplacian Coordinates
    C++五十一篇 -- VS2017开发人员新闻无法联网
    idea 修改Git密码和账号后,Git提交账号的没有改变
  • 原文地址:https://www.cnblogs.com/kuikuitage/p/10953053.html
Copyright © 2011-2022 走看看