小编Val*_*res的帖子

C++在基类问题上返回带有模板的嵌套类

我正在尝试创建一个列表对象,嵌套在其中的迭代器类以了解它是如何工作的.在某些方法中,我试图返回一个迭代器对象,但它不起作用.我创建了一个示例来显示问题:

// CLASS A
template <class T>
class A
{
    public:
        class B;
        A(){}
};

// CLASS B
template <class T>
class A<T>::B
{
    private:
        int varB;

    public:
        B(B& b);
        B(const int&);
        B returnThis();
};

template <class T>
A<T>::B::B(const int& value)
{
    varB = value;
}

template <class T>
A<T>::B::B(B& b)
{
    varB = b.varB;
}

template <class T>
A<T>::B A<T>::B::returnThis()
{
    return *this;
}

// MAIN

void main()
{
    A<int>::B classB(10);
}
Run Code Online (Sandbox Code Playgroud)

错误接近这些行:

template <class T>
A<T>::B A<T>::B::returnThis()
Run Code Online (Sandbox Code Playgroud)

编译器告诉我,我错过了一个; …

c++ templates nested class

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

二维阵列中的所有可能性

我有这个数组:

$array = array
(
    array('1', '2', '3'),
    array('!', '@'),
    array('a', 'b', 'c', 'd'),
);
Run Code Online (Sandbox Code Playgroud)

我想知道子数组的所有字符组合..例如:

1!a
1!b
1!c
1!d
1@a
1@b
1@c
1@d
2!a
2!b
2!c
2!d
2@a
2@b
...
Run Code Online (Sandbox Code Playgroud)

目前我有这个代码:

for($i = 0; $i < count($array[0]); $i++)
{
    for($j = 0; $j < count($array[1]); $j++)
    {
        for($k = 0; $k < count($array[2]); $k++)
        {
            echo $array[0][$i].$array[1][$j].$array[2][$k].'<br/>';
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它有效,但我觉得它很难看,当我添加更多数组时,我必须添加更多数组.我很确定有一种方法可以递归地执行此操作,但我不知道如何启动/如何执行此操作.一点帮助可能会很好!

谢谢!

php arrays algorithm

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

如何检查函数是否可以使用参数调用?

我用call_user_func_array调用一个函数:

call_user_func_array(array($this, 'myFunction'), array('param1', 'param2', 'param3'));
Run Code Online (Sandbox Code Playgroud)

除非我不知道函数需要多少参数,否则一切都很好.如果该函数需要4个参数,它会向我发送一个错误,我想测试是否可以调用该函数(带有一个参数数组).is_callable()不允许参数检查.编辑:如果调用失败,我需要调用另一个函数,这就是我需要检查的原因.

谢谢!

php

3
推荐指数
1
解决办法
2245
查看次数

MYSQL优化和问题

我正在尝试优化我的MySQL查询,我需要一些帮助.这是我目前的查询:

SELECT *,
       (SELECT name FROM stores WHERE id = products.store_id) AS store_name,
       (SELECT username FROM stores WHERE id = products.store_id) AS store_username,
       (SELECT region_id FROM stores WHERE id = products.store_id) AS region_id,
       (SELECT city_id FROM stores WHERE id = products.store_id) AS city_id,
       (SELECT name FROM categories_sub WHERE id = products.subcategory_id) AS subcategory_name,
       (SELECT name FROM categories WHERE id = category_id) AS category_name
FROM products
WHERE date_start <= DATE(NOW()) AND date_end >= DATE(NOW())
Run Code Online (Sandbox Code Playgroud)

我很确定它可以更快.

我也有一个问题,当我尝试按region_id选择所有产品时(通过添加类似"AND region_id = MYID"的东西)它不起作用,我想知道它是否可以让它工作,以及如何?

感谢您的时间!

解 …

mysql sql optimization subquery

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

标签 统计

php ×2

algorithm ×1

arrays ×1

c++ ×1

class ×1

mysql ×1

nested ×1

optimization ×1

sql ×1

subquery ×1

templates ×1