小编Ash*_*hot的帖子

如何在cvs中还原文件?

我已经从CVS存储库检出了一个文件并进行了更改.

cvs up命令说文件已被修改M.

我需要删除我的更改.cvs命令可以为我做什么?

cvs revert

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

如何设置QTableView的行高?

我有QTableViewQAbstractTableModel.我要求行的高度等于24.我知道这样做的唯一方法是通过调用QTableView::setRowHeight.由于模型是动态的,因此可能会添加新行,但setRowHeight每次添加新行时我都不想调用.

如何配置QTableView以使其对新添加的行使用相同的高度,或者可以将模型发送到行的高度?

c++ qt row qtableview qabstracttablemodel

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

c ++获取变量的地址而不使用运算符&

我有一个超载一元的课程operator&.该类型的对象是使用创建的new,因此变量的地址是可访问的,但现在我需要使用静态对象.有可能得到它的地址吗?

c++ memory memory-management addressof

23
推荐指数
2
解决办法
4199
查看次数

C++模板函数优先级

#include <iostream>

template <class U, class T>
void foo(U&, T&)
{
    std::cout << "first";
}

template <class T>
void foo(int&, const T&)
{
    std::cout << "second";
}

int main()
{
    int a;
    double g = 2.;
    foo(a, g); // prints "first"

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

要调用第二个foo重载,编译器只需执行一次模板类型推导,但对于第一次重载,它需要执行两次.你能解释为什么第一次超载被调用了吗?

c++ templates function overload-resolution

21
推荐指数
2
解决办法
2181
查看次数

获取目录中的最新文件

我需要在以nlb开头的文件夹中获取最新的目录名称.

#!/bin/sh

cd /home/ashot/checkout
dirname=`ls -t nlb* | head -1`
echo $dirname
Run Code Online (Sandbox Code Playgroud)

当文件夹包含许多名称以nlb开头的文件夹时,此脚本可以正常工作,但是当只有一个名称以nlb开头的文件夹时,此脚本会在该文件夹中打印最新的文件名.如何更改它以获取最新的目录名称?

unix bash shell

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

Qt:点击一下即开始编辑单元格

默认情况下,QTableView双击后开始编辑单元格.如何改变这种行为.我需要它在一次点击后开始编辑.

我已将组合框委托设置为单元格.单击单元格时,它只选择它.双击单元格时,QComboBox编辑器已激活但未展开.我希望它只需点击一下就可以扩展,就像我添加QComboBoxsetCellWidget功能一样QTableWidget.我使用model-view-delegate需要相同的效果.

c++ qt delegates qtableview model-view

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

基类中的私有静态成员

#include <iostream>
#include <string>

class Base
{
    static std::string s;
};

template<typename T>
class Derived
    : Base
{
public:
    Derived()
    {
        std::cout << s << std::endl;
    }
};

std::string Base::s = "some_text";    

int main()
{
    Derived<int> obj;
}
Run Code Online (Sandbox Code Playgroud)

该程序编译并正常运行.静态变量s在基类中是私有的,私有地继承.Derived类如何访问它?

如果Derived类不是模板,则编译器会抱怨访问私有变量.

[aminasya@amy-aminasya-lnx c++]$ g++ --version
g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance templates g++ static-members

17
推荐指数
2
解决办法
731
查看次数

获取大于数字的元素数量

我试图解决以下问题:正在将数字插入容器中.每次插入一个数字时,我都需要知道容器中有多少元素大于或等于当前插入的数字.我相信这两个操作都可以以对数复杂度完成.

我的问题: C++库中是否有可以解决问题的标准容器?我知道std::multiset可以在对数时间插入元素,但是如何查询呢?或者我应该实现一个数据结构(从二叉搜索树)来解决它?

c++ algorithm containers

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

了解C typedef

我试图理解这个来自Tcl文档的代码

typedef int Tcl_DriverOutputProc(
        ClientData instanceData,
        const char *buf,
        int toWrite,
        int *errorCodePtr);
Run Code Online (Sandbox Code Playgroud)

我知道typedef的目的是为现有类型分配替代名称,那么为什么需要将typedef int赋予函数?这怎么用?

c c++ types tcl

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

为什么vector.begin()不等于&vector [0]?

这里http://www.parashift.com/c++-faq/vector-is-contiguous.html据称,vector.begin()可能不等于&vector[0].为什么以这种方式定义它.什么阻止vector.begin()等于&vector[0]

c++ stl vector

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