小编Ste*_*ano的帖子

通过指定的分隔符分割wstring

我有一个std :: wstring变量,其中包含文本,我需要用分隔符将其拆分。我该怎么办?我不会使用会产生一些警告的Boost。谢谢

编辑1, 这是一个示例文本:

你好你好吗?

这是代码:

typedef boost::tokenizer<boost::char_separator<wchar_t>, std::wstring::const_iterator, std::wstring> Tok;

boost::char_separator<wchar_t> sep;

Tok tok(this->m_inputText, sep);

for(Tok::iterator tok_iter = tok.begin(); tok_iter != tok.end(); ++tok_iter)
{
    cout << *tok_iter;
}
Run Code Online (Sandbox Code Playgroud)

结果是:

  1. 你好
  2. 怎么样

我不明白为什么最后一个字符总是被分割成另一个标记...

c++ string split

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

Boost只序列化std :: wstring的第一个字符

我正在使用boost来序列化文本存档和std :: wstring变量.如果我切换到std :: string它工作得很好但是当我使用wstring时,我只得到一个序列化的字符.为什么?

std::wstring text;

template<class Archive> void serialize(Archive &ar, const unsigned int version)
{
    ar & text;
}

...

std::ostringstream stream;

boost::archive::text_oarchive archive(stream);

archive << params;

...

stream.str()
Run Code Online (Sandbox Code Playgroud)

c++ serialization boost wstring

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

要查看的ASP.NET MVC 2控制器:IList还是List?

我应该从模型返回查看IList<T>对象还是List<T>?我将迭代模型集合并在ASP.NET MVC 2视图中显示结果.

asp.net-mvc c#-4.0

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

在WM_KEYDOWN消息中获取第30位的lParam参数

我需要获取通过WM_KEYDOWN消息传递的lParam参数的第30位.这里写的这个位让我知道之前是否按下了键.这个代码是正确的吗?

(lParam >> 30) & 1
Run Code Online (Sandbox Code Playgroud)

c++ winapi bit-shift windows-messages

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

动态菜单与模板中的symfony

我正在构建一个symfony网站,我有自己的代码来动态构建子项目菜单.现在我用base.html.twig文件(主布局)中的一些twig代码打印它.问题是当我需要使用菜单项传递数组时.我实际上是将它传递给单个控制器的render方法,但是当我切换页面时,我得到了一个不存在的变量.我怎么能有一个位置来放置我的PHP代码来构建菜单数组并在每次呈现页面时执行它?

php symfony1 menu dynamic

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

QML 窗口最小宽度

我正在用 QML 和下面的代码创建一个窗口。如何为窗口设置最小宽度,以便调整大小不能小于我定义的值?

Rectangle {
    color: red;
    width: 300
    height: 100
}

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QDeclarativeView view;

    view.setSource(QUrl::fromLocalFile("QML/main.qml"));
    view.setResizeMode(QDeclarativeView::SizeRootObjectToView);
    view.show();

    return app.exec();
}
Run Code Online (Sandbox Code Playgroud)

qt text qt4 qml

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

QML 打开 GUI 窗口和控制台

我正在尝试获得一个有效的 QML 应用程序。一切都很好,只是当我运行我的应用程序时,它会打开 QML 窗口和控制台窗口。为什么?这是代码:

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QDeclarativeView view;

    view.setSource(QUrl::fromLocalFile("myfile.qml"));
    view.show();

    return app.exec();
}

Rectangle {
    width: 940
    height: 670
    color: red
}
Run Code Online (Sandbox Code Playgroud)

c++ console user-interface declarative qt4

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

QML双向C++绑定不再接收更改

我面临一个很大的问题,它需要花费很多时间来修复,因为我不知道原因以及如何解决它.问题非常简单:我有一个示例QML组件定义为:

Rectangle {
    id: rect
    property bool test: myclass.testproperty

    Rectangle {
        width: 50
        height: 50
        visible: parent.test
    }
}
Run Code Online (Sandbox Code Playgroud)

我连接了一个MouseArea onClicked信号来执行此操作:

test = !test
Run Code Online (Sandbox Code Playgroud)

所以我切换布尔变量的值.要使用READ,WRITE和NOTIFY信号将值从C++推送到QML并从QML推送到C++ Q_PROPERTY,我使用了这个

Binding {
    target: myclass
    property: "testproperty"
    value: rect.test
}
Run Code Online (Sandbox Code Playgroud)

一切正常,直到我点击mouseArea,所以我通过绑定推送更改.之后,每当我尝试从C++设置新的属性值时,我都没有看到QML发生任何变化,就像绑定被破坏一样.但是如果我尝试单击MouseArea,我仍然会调用C++类的setTestProperty方法.基本上,它与C++ - > QML方式不同步.为什么?我找不到问题,发出信号是因为QSignalSpy在使用后给出了1作为发射次数的计数

emit this->testPropertyChanged(newvalue)
Run Code Online (Sandbox Code Playgroud)

编辑

这里有一个例子:基本上我们在这里使用具有相同精确信号的QString属性.唯一改变的是,我使用TextInput元素而不是使用Rectangle QML元素并绑定到自己的属性.

TextInput {
    id: mytext
    text: myclass.testproperty
}

Binding {
    target: myclass
    property: "testproperty"
    value: mytext.text
}
Run Code Online (Sandbox Code Playgroud)

c++ qt4 qml qt-quick

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

使用SQL过滤一系列日期

我必须从当天开始过滤SQL的结果并显示所有记录,直到当天+ 10天.因此,如果是12月22日,我应该显示当天开始的所有记录,而不是在1月1日之后.我怎样才能做到这一点?我尝试了一个简单的查询,如下面的那个,但它似乎只显示记录,直到当月的最后一天,然后而不是显示下一年的记录回到当年的第一个月.

SELECT * 
FROM mytable 
WHERE DAY(mydatefield) >= DAY(CURRENT_TIMESTAMP) 
  AND mydatefield <= DATE_ADD(CURRENT_TIMESTAMP, INTERVAL 10 DAY)
Run Code Online (Sandbox Code Playgroud)

编辑1

我正在使用Symfony 2 + Doctrine 2 querybuilder,因此查询必须与它们兼容

编辑2

我通过使用eggyal使用此PHP代码建议的查询解决了Doctrine 2问题

$queryBuilder->where($queryBuilder->expr()->gte('mydatefield', 'CURRENT_DATE()'))->andWhere($queryBuilder->expr()->lte('mydatefield', 'DATE_ADD(CURRENT_DATE(), 10, \'DAY\')'));
Run Code Online (Sandbox Code Playgroud)

php mysql datetime filter symfony

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

使用Symfony从Doctrine模型创建数据库

我用SQL CREATE DATABASE命令创建了一个新的数据库来托管我的应用程序表.我现在将使用Doctrine从我的Symony 2.1项目生成数据库.我已经有正确的映射YML-PHP实体但是当我尝试使用该命令时

php app/vendors doctrine:schema:create
Run Code Online (Sandbox Code Playgroud)

它在我在我的应用程序中运行的查询失败.我不明白为什么它似乎正在尝试启动我的捆绑包,因此很明显它失败了,因为我执行的查询找不到表.如何生成新数据库?

Base table or view not found: 1146 Table 'mydatabase.mytable_menu' doesn't exist
Run Code Online (Sandbox Code Playgroud)

php doctrine symfony-2.1

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