小编Dar*_*enW的帖子

与C++相比,Vala是一种理解的语言吗?

解析C++的问题是众所周知的.它不能纯粹基于语法进行解析,它不能像LALR那样完成(无论术语是什么,我不是语言理论家),语言规范是一个很多页面等等.由于这个和其他原因我为我的个人项目决定另一种语言.

Vala看起来很好.虽然提供了许多比C++更多的改进,但解析起来同样麻烦吗?或者它有一个整洁,合理的长度形式语法,或一些逻辑描述,适合构建编译器,源分析器和其他工具的解析器?

无论答案是什么,Genie替代语法都是如此?

(我也很想知道D和其他后C++非VM语言不太强烈.)

c++ parsing vala

7
推荐指数
2
解决办法
2990
查看次数

C++的替代语法,Vala的la Genie?

Vala语言编译器可以处理非常不同的语法Genie,可以说它可以被认为是一种语言的不同语言或替代语法.AFIK,你可以在Vala做的任何事情,你可以写Genie(忽略正在进行的细节,错误)让任何不喜欢花括号的人高兴.

是否有一些语言或替代语法与Genie与Vala的标准C++具有相同的关系?它应该允许做任何可能在C++中做的事情.(它不需要普通的C++编译器可读,但是 - 我不希望在这个时间点.)

(附带问题:Genie/Vala是我现在能想到的唯一例子.还有其他例子吗?)

c++ programming-languages vala genie

7
推荐指数
1
解决办法
1238
查看次数

在C#中打印到LPT1

如何使用文件LPT1直接打印到C#中的点阵打印机.

我用Copen在C++上做过,但我不知道如何在c#中做到这一点.

非常感谢你

c# printing file driver

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

复古:学习CVS,来自SVN

我已经使用过Subversion(从前十年开始插入年份),但现在我在使用CVS的公司.对于从旧版本控制系统到新版本的人来说,有大量的操作指南,教程,备忘单等,但对于我们中的少数人来说,采用"错误"的方式有什么用呢?

我正在为svn,git或其他流行系统寻找适合当前经验丰富的开发人员的秘籍表,技巧,陷阱.不需要用于版本控制新手的东西,或者文章颂扬CVS的优点,而不是在"64K RAM足够多"的日子里使用的东西.

svn cvs version-control

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

什么是Eclipse"视角",我将如何制作一个?

Eclipse文档和网站对我来说仍然有点太厚,一个完整的Eclipse noob.有人可以解释一下适合非IDE用户的观点是什么,以及制作新观点的内容是什么?

到目前为止,我猜测"透视"仅仅是Eclipse中窗口的固定排列,并且可以为项目中不同的工作阶段选择其中一个.但我得到的印象是它更大更强大.

eclipse

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

VS2010中各种命令shell之间有什么区别?

"visual studio x64 win64命令提示符","visual studio x64交叉工具命令提示符"和"可视工作室命令提示符"出现在"开始"按钮的Visual Studio 2010菜单中有什么区别?

对于最有用的答案,让我们清楚一下我的无知程度:在微软或IDE的任何领域,我都比大师更接近noob.Linux的长期专家,在纯文本编辑器中编辑源代码,手工制作Makefiles等.

我确信这些差异很简单,对于在VS2010拥有适度经验的人来说可能是"显而易见的".

shell visual-studio-2010

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

Why does main() compiled by D have a 32-bit return value on a 64-bit machine?

Here is a very small source file in D:

void main()
{
}
Run Code Online (Sandbox Code Playgroud)

and here objdump's disassembly of the .o file:

Disassembly of section .text._Dmain:
0000000000000000 <_Dmain>:
void main()
   0:   55                      push   %rbp
   1:   48 8b ec                mov    %rsp,%rbp
   4:   31 c0                   xor    %eax,%eax
{
   6:   5d                      pop    %rbp
   7:   c3                      retq   
Run Code Online (Sandbox Code Playgroud)

The compiler is DMD64 D Compiler v2.056 running on an x86_64 Linux machine.

What I wonder is why only 32-bit EAX is being cleared rather than the whole …

assembly d

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

如何将带前导零的整数插入到std :: string中?

在C++ 14程序中,我给了一个类似的字符串

std::string  s = "MyFile####.mp4";
Run Code Online (Sandbox Code Playgroud)

和0到几百的整数.(它永远不会是一千个或更多,但只有四个数字.)我想####用整数值替换" ",根据需要使用前导零来匹配'#'字符数.什么是灵活的C++ 11/14修改s或生成这样的新字符串的方法?

通常我会使用char*字符串snprintf(),strchr()并找到" #",但我应该得到现代和std::string更频繁使用,但只知道它的最简单的用途.

c++ stdstring c++14

6
推荐指数
3
解决办法
1386
查看次数

是什么决定了QFileDialog中文件的排序?

用户通过QFileDialog在我们的应用程序中打开文件.文件名的顺序很奇怪.什么是确定排序顺序,我们如何使它按文件名排序,或以其他方式强加我们自己的排序,也许给它一个指向我们自己的比较函数的指针?

文档和在线论坛没有帮助.除非它被很好地隐藏,否则似乎没有任何排序方法,属性等.

这是一个主要的Linux应用程序,但也可以在Mac上运行.(我对Mac一无所知.)

这是源代码的多汁部分:

QtFileDialog chooser(parent, caption, directory, filter);
/// QtFileDialog is our class derived from QFileDialog

chooser.setModal(true);
chooser.setAcceptMode(acceptMode);
chooser.setFileMode(fileMode);

QStringList hist = chooser.history();
chooser.setHistory(hist);

/* point "x" */

if(chooser.exec()) {    
    QStringList files = chooser.selectedFiles();
    ...blah blah blah...
Run Code Online (Sandbox Code Playgroud)

从其中一个答案中,我尝试了一个邪恶的实验,在"点x"处添加了这个不明智的猜测代码:

QSortFilterProxyModel *sorter = new QSortFilterProxyModel();
sorter->sort(1);  // ???
chooser.setProxyModel(sorter);
Run Code Online (Sandbox Code Playgroud)

但是,在这个代码级别的33个子程序调用中,这一点大为震惊.我承认,即使在阅读了Qt4文档和示例代码之后,我也不知道QSortFilterProxyModel的正确用法.

sorting qt qt4 qfiledialog

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

是什么阻止了互连Winforms控件之间的无限循环?

在表单上,​​我有两个控件,A和B.每个控件在其值发生变化时发送一个事件.Form通过将B设置为某个值来处理A的ValueChanged事件,并通过设置A的值来设置B的ValueChanged.

我是否需要做一些特殊的事情以防止无限循环,其中用户更改A,发送一个导致B更新的ValueChanged事件,现在将其发送给ValueChanged事件,导致A更新...

我知道一些GUI工具包,比如Qt,在基础设施中内置了逻辑,以防止这样的循环.(请参阅Qt4上Blanchette&Summerfield书籍第1章中的"输入您的年龄"示例.)一些较旧的工具包需要程序员定义和管理标志以检测递归.对于WinForms,我还没有在任何地方阅读确定的声明.

举一个具体的例子,假设A和B是NumericUpDown控件,以华氏度和摄氏度显示温度.当用户更改一个时,另一个更新以显示另一个系统中的相应温度.

c# events winforms

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