小编mag*_*nus的帖子

我可以在没有Visual Studio的情况下下载Visual C++命令行编译器吗?

根据标题.我不想下载整个Visual C++安装程序,只需要下载"cl.exe"以及在Windows上编译和链接C++程序所需的其他程序.

c++ winapi visual-c++

61
推荐指数
5
解决办法
6万
查看次数

如何使用LIKE查询在PostgreSQL中找到文字百分号(%)?

我有character varying一个表,其中的条目的一些(不是全部)值包含百分比,如'12%','97%'等我想找到所有包含百分比值.换句话说,我想找到所有以百分号('%')结尾的值.

postgresql sql-like

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

什么是Delphi DCU文件?

什么是Delphi DCU文件?

我相信它代表"Delphi Compiled Unit".假设它包含目标代码,我是否正确,因此对应于从C/C++源代码文件编译的".o"文件?

c c++ delphi compilation dcu

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

如何将"精简"PostgreSQL行扩展为单独的列?

我有一个返回表的函数.

如果运行SELECT * FROM some_function(12345)结果是:

object_id | name
----------------
    12345 | "B"
Run Code Online (Sandbox Code Playgroud)

如果运行SELECT some_function(12345)结果是:

some_function
-------------
(12345,"B")
Run Code Online (Sandbox Code Playgroud)

问题是我想要原始表单(以便我可以访问单个列值),但让参数some_function()来自表中的列.我可以执行,SELECT some_function(thing_id) FROM things但这会返回:

some_function
-------------
(12345,"B")
(12346,"C")
(12347,"D")
Run Code Online (Sandbox Code Playgroud)

而我想要的回报是:

object_id | name
----------------
    12345 | "B"
    12346 | "C"
    12347 | "D"
Run Code Online (Sandbox Code Playgroud)

那么如何"不必要"或"扩展"这样一个浓缩的行呢?

sql postgresql

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

C++标准库 - std :: setenv vs setenv

我有一个简单的调用std::setenv,它在我的Linux发行版下工作正常gcc.但是,clang在我的Mac OS X上使用时,出现以下错误.

error: no member named 'setenv' in namespace 'std'; did you mean simply 'setenv'?
std::setenv(name.c_str(), value.c_str(), true);
Run Code Online (Sandbox Code Playgroud)

我敢肯定,我已经阅读了C++ 11 setenv中名称空间的一部分std,但现在我不确定.

问题:应该使用setenv还是std::setenv使用,为什么会这样?

c++ environment-variables c++11

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

通过Delphi访问Windows API会有性能损失吗?

我有几年前用C++中的旧Win32 API编程的经验,最近我参与了Delphi的开发.我马上就认出了很多从Windows API函数(如CreateThread,CreateWindowEx等,等).

我发现Embarcadero的文档不完整(至少可以说),通常可以参考Microsoft网站获取文档.在哪里,我可以补充一下,所有的功能都是用C语言定义的,这使得那里的非C人很难(但对我来说更容易).

我想知道的是 - 鉴于Delphi函数签名与Microsoft提供的C函数签名相同 - 调用Delphi Windows API函数会立即调用Windows API函数,还是调用相同的Delphi函数然后调用它调用Windows API函数并返回结果,前者意味着与相应的C代码相比没有可区别的性能差异,而后者意味着性能损失?

c++ delphi winapi

8
推荐指数
2
解决办法
689
查看次数

为什么sagas不能查询读取方?

在CQRS域驱动设计系统中,常见问题解答说传奇不应该查询读取端(http://cqrs.nu).但是,一个saga监听事件以执行命令,并且因为它执行命令,它本质上是一个"客户端",所以为什么saga不能查询读取模型?

domain-driven-design cqrs event-sourcing

8
推荐指数
2
解决办法
1237
查看次数

为什么 add_custom_target 总是被认为是过时的?

根据文档add_custom_target()创建一个“始终被认为过时”的目标。然而,文档还说可以add_dependencies()在顶级目标之间添加依赖关系,包括add_custom_target(). 如果add_custom_target()总是被执行,那么将它与 一起使用有什么实际目的吗add_dependencies()

cmake

8
推荐指数
2
解决办法
3755
查看次数

类实例和指针背后的Delphi设计原则是什么?

来自C++背景,我理解类,指针和内存地址相当不错.然而,对于Delphi,我发现自己很困惑.

我理解当你在var一个函数/过程的部分声明一个特定类型的类的变量时,你真正声明的是该类的指针.例如,以下Delphi和C++大致相同,都分配MyObject了堆上类所需的内存量.

// Delphi
procedure Blah.Something();
var
  o: MyObject;
begin
  o := MyObject.Create;
  o.Free;
end;

// C++
void Blah::Something()
{
    MyObject *o = new MyObject();
    delete o;
}
Run Code Online (Sandbox Code Playgroud)

在C++中,使用指针(和引用)允许对类层次结构使用虚方法.但是,如果您没有类层次结构,则可以在堆栈上声明一个变量(执行速度更快).如果需要将变量作为指针传递,则只需使用&运算符获取其地址即可.

// C++
void Blah::Something()
{
    // This is allocated on the stack.
    MyObject o;
    // This address of this stack-allocated object is being used.
    doSomethingWithAnOhPointer(&o);
}
Run Code Online (Sandbox Code Playgroud)

在这个阶段,我有一些关于Delphi使用类和指针的问题.

  1. 如果o := MyObject.Create在Delphi中使用堆分配创建对象,如何在堆栈上分配对象?
  2. 如果声明为特定类型的类的变量o: MyObject实际上是指针,那么为什么^指针符号从未使用过.这是德尔福的"便利"成语吗?
  3. 你怎么能得到MyObject堆上实际的地址?我试过了:以下.

    WriteLogLine('Address of object: ' …
    Run Code Online (Sandbox Code Playgroud)

c++ delphi pointers class

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

在自定义迭代器中包装STL容器的最佳方法是什么?

为了说明,假设我有一个自定义容器而不是std::vector内部使用STL .如果我将typedef std::vector<char*>::iterator改为my_container::iterator,那么取消引用迭代器将返回一个char*.但是,我的自定义容器应该隐藏其内部,这意味着我想要一个解除引用来返回一个char.

如何实现这一目标?

class my_container {
public:

    typedef std::vector<char*> vector;

private:

    vector vec_;

};
Run Code Online (Sandbox Code Playgroud)

更新: char*是一个例子.它不代表C字符串; 一个例子会更清楚int.

此外,我想使用std::forward_iterator_tag,std::iterator因为这似乎是一个更标准/当前的方法.

c++ containers iterator template-meta-programming

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