小编Pet*_*uza的帖子

使用C++但不使用语言的特定功能,应该切换到C?

在空闲时间,我正在开发一个NES模拟器作为业余爱好.
我使用的是C++,因为我主要使用的语言,大部分都是知道的.
但是现在我已经在项目中取得了一些进展,我意识到我几乎没有使用C++的任何特定功能,并且可以在普通的C中完成它并获得相同的结果.
我不使用模板,运算符重载,多态,继承...所以你会说什么?我应该留在C++中还是用C语言重写?
我不会这样做以获得性能,它可能会产生副作用,但这个想法是为什么我应该使用C++,如果我不需要它?
我正在使用的C++的唯一特性是封装数据和方法的类,但是也可以使用结构和函数来完成,我使用new和delete,但是也可以使用malloc和free,而且我是使用继承仅用于回调,这可以通过指向函数的指针来实现.
请记住,这是一个业余爱好项目,我没有截止日期,因此需要重新编写的开销时间和工作不是问题,也可能很有趣.

那么,问题是C还是C++?

c c++

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

在PHP中是否可以像在C中一样转义字符串中的换行符?

在C中,您可以在转义换行符的下一行中继续使用字符串文字:

char* p = "hello \
new line.";

$p = "hello \
new line.";

IE反斜杠字符构成字符串的一部分.在这种情况下,有没有办法在PHP中获取C行为?

php c newline escaping

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

为什么表单发布会产生$ _FILES ['thefile'] ['name'] [0]而不是$ _FILES ['thefile'] [0] ['name']?

当您命名多个具有相同名称和数组索引的文件输入字段时,如下所示:
<input type='file' name='thefile[0]'>
<input type='file' name='thefile[1]'>

然后在表单提交中你得到这个:
$_FILES['thefile']['name'][0]
$_FILES['thefile']['name'][1]
依此类推其他字段.

我觉得这很烦人,因为它可以防止重复使用代码进行非数组文件上传.
这会不会更好:?
$_FILES['thefile'][0]['name']等等?

有人知道这个奇怪的CGI/HTML实现背后的原因吗?

html php forms post cgi

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

PHP中的`delete`关键字是否与C++或类似的一样?

只是为了好奇,我输入delete了一个带有PHP语法高亮的编辑器,它用一个已知的关键字颜色.
unset()这对我假设参考使用时会触发垃圾收集,资源释放或引擎盖下的任何PHP做,但到底是什么delete呢?
尝试delete $ref引用变量时,我收到此错误:Parse error: syntax error, unexpected T_VARIABLE in /... on line ...

php reference keyword

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

使用没有NSAutoReleasePool的autoReleased对象?

我正在写Objective-C的第一步.
我按照一些示例和官方文档,并使用自动释放的对象*,而没有明确声明NSAutoReleasePool.

*通过自动释放的对象我的意思是: SomeClass *obj = [SomeClass someClass];

这样做可以吗?
它会导致内存问题吗?
宣布NSAutoReleasePool更有效率?

编辑:我在代码示例中犯了一个错误,我的意思是通过它的类工厂方法而不是alloc实例来获取对象.这个工厂方法[经常|总是]返回自动释放的对象,对吧?例如:[NSString stringWithCString:x]

macos xcode cocoa objective-c

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

在声明它时调用Javascript匿名函数不起作用,稍后调用它

[answered]

我正在测试我的浏览器的fps为html5游戏.
我有这个代码:

var requestAnimationFrame = ( function() {
    return window.requestAnimationFrame || //Chromium 
    window.webkitRequestAnimationFrame || //Webkit
    window.mozRequestAnimationFrame || //Mozilla Geko
    window.oRequestAnimationFrame || //Opera Presto
    window.msRequestAnimationFrame || //IE Trident?
    function(callback) { //Fallback function
        window.setTimeout(callback, 1000/60);
    }
})();

var hits = 0;
var last = new Date().getTime();

var step = (function(){
    now = new Date().getTime();
    hits += 1;
    if( now - last >= 1000 ){
        last += 1000;
        console.log( "fps: "+ hits );
        hits = 0;
    }
    requestAnimationFrame( step );
})();
Run Code Online (Sandbox Code Playgroud)

它在Chrome上出现以下错误: …

html javascript html5 canvas requestanimationframe

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

as3 - 你能获得对for ... each ... in循环中元素的引用吗?

Actionscript 为...提供循环,通过键引用正在迭代的元素.

for ... each ... in循环产生元素的副本,而不是对正在迭代的集合中的原始元素的引用.有没有办法获得它的参考或我必须求助于... in

考虑一下假设:

for each( var &iter:* in collection )
Run Code Online (Sandbox Code Playgroud)

我知道在actionscript中没有这样的解除引用操作符,但是你能通过其他方式在这里获得引用吗?

PS:Adobe的文档说明:

variableIterant:* - 用作迭代的变量的名称,引用集合中的项.

虽然它是按价值而不是参考的副本.

iteration actionscript actionscript-3

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

如何连接槽以在Qt中发信号通知QProcess :: started()?

编辑:解决了.

嗨,我从Qt开始,我尝试连接一个插槽信号,QProcess::started()但不能.QObject::connect()回报false.

知道我做错了什么吗?

这是代码的一部分:


class foo : public QObject
{   
 public:
  QProcess *process;

 public slots:
  void process_started();
}

foo::foo()
{
 process = new QProcess();
 bool status = QObject::connect( process, SIGNAL( started() ), this, SLOT( process_started() ) );
 // status is false, meaning the slot and signal couldn't be connected
}
Run Code Online (Sandbox Code Playgroud)

我知道这个过程成功启动,因为我尝试过process->WaitForStarted()并返回true.但是我在插槽上放了一个断点,foo::process_started()它永远不会被击中.这有什么问题?谢谢!

qt signals qt4 signals-slots

0
推荐指数
1
解决办法
4171
查看次数

MySQL:如何获得实际的TimeStamp?字面意思是自1970-01-01 UTC以来的秒数

MySQL时间戳字段被写为'yyyy-MM-dd hh:mm:ss',如何获得自1970-01-01 UTC以来的实际秒数?

mysql timestamp

0
推荐指数
1
解决办法
3028
查看次数

NSWindows的setFrame:display:animate:不起作用,setFrame:display:does

我试着打电话setFrame:display:animate:给我的NSWindow而且没有做任何事情,但是如果我setFrame:display:在同一个窗口打电话,那就行了.
我是否必须做其他事情以启用动画调整大小?

PS:在C++中,如果我想提一个我编写的特定类'方法,例如:( NSWindow::setFrame()不仅在代码中,而且在帖子中引用它)在O​​bjective-C中有这样的约定吗?[NSWindow setFrame:display:animate:]

cocoa objective-c nswindow

0
推荐指数
1
解决办法
899
查看次数

在C++中初始化类的静态数组成员的更好方法(虽然const是首选)

我有一个指向函数的静态数组指针作为类的成员.

我需要对它进行初始化,但事实证明这个数组的长度是64K项,因此使用静态初始化器初始化它是不切实际的,就像{ x, y, z, ... }它会使代码混乱一样.

我反而用代码初始化它,有几个循环.

我想要这样做的方法是static在构造函数中初始化数组并为其设置一个标志,因此只有该类的第一个实例的构造才会触发此初始化.

从实例中访问这个静态标志也不是线程安全的,但这是另一个故事.

有更干净或更好的方法吗?

我也想要这个数组const,但我担心唯一的方法就是static {}初始化,对吗?

c++ static-initializer static-initialization static-array

0
推荐指数
1
解决办法
328
查看次数

What are function pointers good for in Go if you can't assign them values?

Can you do anything in Go with a *func()?

    var f func() = foo // works
    var g *func() // works
    g = foo // fails `cannot use foo (type func()) as type *func() in assignment` as expected
    g = &foo // fails too `cannot take the address of foo`
Run Code Online (Sandbox Code Playgroud)

function-pointers go

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