小编Nil*_*ils的帖子

在GNU Make中使用CMake:如何查看确切的命令?

我使用CMake与GNU Make,并希望完全看到所有命令(例如编译器如何执行,所有标志等).

GNU make有--debug,但似乎没有任何其他选项有用吗?CMake是否在生成的Makefile中提供了额外的标志以进行调试?

cmake gnu-make

255
推荐指数
7
解决办法
14万
查看次数

在没有new的情况下用c ++调用构造函数

我经常看到人们使用C++创建对象

Thing myThing("asdf");
Run Code Online (Sandbox Code Playgroud)

而不是这个:

Thing myThing = Thing("asdf");
Run Code Online (Sandbox Code Playgroud)

这似乎有用(使用gcc),至少只要没有涉及模板.我现在的问题是,第一行是否正确,如果是这样,我应该使用它?

c++

133
推荐指数
4
解决办法
13万
查看次数

使用与构造函数参数相同的名称初始化成员变量,以及C++标准允许的成员变量?

我发现可以使用与下面示例中显示的名称相同的构造函数参数初始化成员变量.

#include <cstdio>
#include <vector>

class Blah {
    std::vector<int> vec;

public:
    Blah(std::vector<int> vec): vec(vec)
    {}

    void printVec() {

        for(unsigned int i=0; i<vec.size(); i++)
            printf("%i ", vec.at(i));

        printf("\n");
    }
};

int main() {

    std::vector<int> myVector(3);

    myVector.at(0) = 1;
    myVector.at(1) = 2;
    myVector.at(2) = 3;

    Blah blah(myVector);

    blah.printVec();

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

带有参数的g ++ 4.4 -Wall -Wextra -pedantic没有提供任何警告并且工作正常.它也适用于clang ++.我想知道C++标准对此有何看法?是否合法并保证始终有效?

c++

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

告诉gcc专门展开一个循环

如何告诉GCC展开特定的循环?我使用过CUDA SDK,可以使用手动展开循环#pragma unroll.gcc有类似的功能吗?我用谷歌搜索了一下但找不到任何东西.

c gcc pragma unroll

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

带-std = c99的GCC抱怨不知道struct timespec

当我尝试在Linux上编译它时gcc -std=c99,编译器抱怨不知道struct timespec.但是,如果我编译它没有-std=c99一切正常.

#include <time.h>

int main(void)
{
  struct timespec asdf;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么会这样,有没有办法让它继续使用-std=c99

c posix c99 timespec

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

Latex:使用等宽字体的列表

这就是代码在Xcode中的样子. xcode http://img94.imageshack.us/img94/972/xcode.png

这在我用texlive创建的列表中.

替代文字http://img25.imageshack.us/img25/1245/latexn.png

是的,我使用了basicstyle =\ttfamily.看过列表手册后,我还没有找到任何关于fixed-with或monospace字体的信息.

重现的例子

\documentclass[
  article,
  a4paper,
  a4wide,
  %draft,
  smallheadings
]{book}

% Packages below
\usepackage{graphicx}
\usepackage{verbatim} % used to display code
\usepackage{hyperref}
\usepackage{fullpage}
\usepackage[ansinew]{inputenc} % german umlauts
\usepackage[usenames,dvipsnames]{color}
\usepackage{float}
\usepackage{subfig}
\usepackage{tikz}
\usetikzlibrary{calc,through,backgrounds}
\usepackage{fancyvrb}
\usepackage{acronym}
\usepackage{amsthm} % Uuhhh yet another package
\VerbatimFootnotes % Required, otherwise verbatim does not work in footnotes!
\usepackage{listings}

\definecolor{Brown}{cmyk}{0,0.81,1,0.60}
\definecolor{OliveGreen}{cmyk}{0.64,0,0.95,0.40}
\definecolor{CadetBlue}{cmyk}{0.62,0.57,0.23,0}
\definecolor{lightlightgray}{gray}{0.9}

\begin{document}
\lstset{
language=C,                             % Code langugage
basicstyle=\ttfamily,                   % Code font, Examples: \footnotesize, \ttfamily
keywordstyle=\color{OliveGreen},        % Keywords font ('*' = uppercase)
commentstyle=\color{gray}, …
Run Code Online (Sandbox Code Playgroud)

latex

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

如何在Eclipse CDT中使用GDB控制台?

有没有办法在Eclipse中访问gdb的控制台?我想能够用鼠标设置断点,然后使用控制台进行调试.

eclipse gdb eclipse-cdt

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

C/C++中OpenGL着色器的简易框架

我只是想在平面图像上尝试一些着色器.事实证明,编写一个C程序,它只是将图片作为纹理并应用,假设是高斯模糊,因为它上面的片段着色器并不那么容易:你必须初始化OpenGL,就像100行代码,然后了解GLBuffers等.另外要与窗口系统进行通信,必须使用另一个框架GLUT.

事实证明,Nvidia的Fx作曲家很适合使用着色器.但我仍然希望有一个简单的C或C++程序,它只是将给定的片段着色器应用于图像并显示结果.有人有例子还是有框架?

c c++ opengl

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

指针的大小在C中是否有所不同?

可能的重复:
指针的大小可能会变化,具体取决于指向的内容?
是否有任何平台指向不同类型的指针有不同的大小?

指向c中浮点的指针大小是否可能与指向int的指针不同?尝试过之后,我得到了各种指针的相同结果.

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("sizeof(int*): %i\n", sizeof(int*));
    printf("sizeof(float*): %i\n", sizeof(float*));
    printf("sizeof(void*): %i\n", sizeof(void*));
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

这里有哪些输出(OSX 10.6 64位)

sizeof(int*): 8
sizeof(float*): 8
sizeof(void*): 8
Run Code Online (Sandbox Code Playgroud)

我可以假设不同类型的指针具有相同的大小(当然在一个拱门上)?

c pointers

30
推荐指数
7
解决办法
5万
查看次数

在matlab中为对数图选择不同的基数

我希望x轴与对数2成对数:从2 ^ 10到2 ^ 25,并且在每一步,指数应该增加1,而y轴应该是线性的.

这怎么可能?我已经想通了

set(gca,'XScale','log')
Run Code Online (Sandbox Code Playgroud)

但你不能设置基数.

matlab

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

标签 统计

c ×4

c++ ×3

c99 ×1

cmake ×1

eclipse ×1

eclipse-cdt ×1

gcc ×1

gdb ×1

gnu-make ×1

latex ×1

matlab ×1

opengl ×1

pointers ×1

posix ×1

pragma ×1

timespec ×1

unroll ×1