小编Mar*_*ett的帖子

阻止visual studio创建浏览信息(.ncb)文件

有没有办法阻止VS2008为C++项目创建浏览信息文件文件.
我很少使用类浏览器,并且在每次构建之后重新创建它都是不值得的,特别是因为即使构建失败也会运行它.

编辑 - 进入声明/定义也需要它

c++ visual-studio-2008 visual-studio

5
推荐指数
2
解决办法
7088
查看次数

减少Windows可执行文件的大小

我在Windows上有一个C++/MFC应用程序 - 动态链接它只有60kb静态它> 3Mb.
它是通过电子邮件分发给客户的,因此需要尽可能小.

它静态链接MFC和MSCVRT库 - 因为它修复了一些问题,我不想要更多关于缺少库的支持调用 - 特别是非常有用的'应用程序配置不正确'一个!

反正有剥离Windows exe的所有额外的MFC东西是dll,但我没有使用?
或者告诉它动态链接MSVCRT(必须存在)但静态链接MFC dll可能不是?

编辑 - 感谢将其降至1.6Mb,这将是必须的!

c++ windows dll linker mfc

5
推荐指数
3
解决办法
6102
查看次数

在c ++中复制一个未知的具体类型

假设我们有以下类层次结构:

class Base {
    ...
};

class Derived1 : public Base {
    ...
};

class Derived2 : public Base {
    ...
};
Run Code Online (Sandbox Code Playgroud)

给定一个Base*可能点到任何一个Derived1Derived2反对我怎样才能使给定的,它的具体类型的实际对象的副本是未知的.我想过定义复制构造函数,但我不认为在不知道所涉及的实际类型的情况下这是可能的.我能想到的唯一解决方案是clone()在层次结构中为每种类型定义一个方法.任何人都可以想到更优雅的东西吗?

c++ polymorphism inheritance

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

如何在C中初始化argv数组

我试图用这些值初始化*argv:test_file模型结果任何人都可以帮助我如何直接初始化argv而不是使用命令行.我是这样做的:

*argv[]= {"test_file","model","output",NULL};
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我知道它很简单,但我是编程的新手.谁能帮我?

c

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

LLU数字上的后缀不好

我有一个库,LLU用作uint64文字的后缀.

Visual Studio 2010(在windows7-64上)抱怨"数字后缀不好",修补库使用LL作品.是否有一些预处理器定义或属性复选框我必须设置为启用LLU

ps谁知道哪个是正确的行为?我一直认为无论VC++做了什么都与标准相反 - 但最近情况有所改善.

c++ visual-studio-2010

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

Visual Studio C++ 强制重建特定文件

有没有办法强制 Visual Studio 在每次构建时重建特定文件?

我有一个带有__DATE__和的版本标头,__TIME__我希望它为每个版本自动更新。

我可以对文件执行预构建事件和批处理文件touch,只是想知道是否有可以执行此操作的功能?

c++ visual-studio-2012

5
推荐指数
2
解决办法
2040
查看次数

QSignalMapper和原始发件人()

QComboBox在桌子上有一堆es.因此我知道触发了哪一个我重新映射信号以编码表格单元位置(如在QTableWidget选择QComboBox中所述)

(为什么Qt不只是首先发送单元激活信号,因此您可以使用与我不知道的任何其他单元格编辑相同的当前行/列机制.)

但这会删除原始发件人窗口小部件的所有知识.QComboBox* combo = (QComboBox* )sender()在插槽中调用失败,大概是因为sender()现在是QSignalMapper.

我可以使用编码的行/列来查找QComboBox表小部件,但这似乎是错误的.有更正确的方法吗?

例如:

// in table creator
_signalMapper = new QSignalMapper(this);

 // for each cell
    QComboBox* combo = new QComboBox();
    connect(combo, SIGNAL(currentIndexChanged(int)), _signalMapper, SLOT(map()));
    _signalMapper->setMapping(combo, row);

   // and finally       
   connect(_signalMapper, SIGNAL(mapped(int)),this, SLOT(changedType(int)));

 // slot
 void myDlg::changedType(int row)
 {      
        QComboBox* combo = (QComboBox* )sender(); // this doesn't work !!
 }
Run Code Online (Sandbox Code Playgroud)

编辑:为将来的搜索添加:Mark Summerfield 有一本新书" 高级Qt编程 ",解释了如何做这种事情.

c++ qt qt4

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

c ++构造函数与new

我只是在一个简单的类中包含指向一些新内存的指针,这是一个非常愚蠢的错误.

class Matrix
{
  public:
    Matrix(int w,int h) : width(w),height(h)
    {           
        data = new unsigned char[width*height];
    }

    ~Matrix() { delete data;    }

    Matrix& Matrix::operator=(const Matrix&p)
    {  
            width = p.width;
            height = p.height;
            data= p.data;
            return *this;
    }
    int width,height;
    unsigned char *data;
}

.........
// main code
std::vector<Matrix> some_data;

for (int i=0;i<N;i++) {
   some_data.push_back(Matrix(100,100)); // all Matrix.data pointers are the same
}
Run Code Online (Sandbox Code Playgroud)

当我用向量的实例填充向量时,内部数据指针最终都指向同一个内存?

c++ constructor new-operator

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

QApplication在unicode中

QApplication的构造函数采用(int argc,char**argv)来处理任何Qt特定的命令行参数.

如果我的应用程序是unicode怎么办?我有一个wchar_t**argv?

创建所有命令行args的char*副本以传递给本身为unicode的库似乎有点愚蠢.

c++ unicode qt

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

有没有办法在Python中循环遍历列表的子部分

因此,对于包含1000个元素的列表,我想从400循环到500.你是如何做到的?

我没有看到使用for each和for range技术的方法.

python loops list

3
推荐指数
2
解决办法
483
查看次数