小编Jan*_*roň的帖子

Lua - 以毫秒为单位的当前时间

是否有一种常见的方式来获取当前时间或以毫秒为单位?

os.time(),但它只提供整秒.

time lua

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

函数参数中的数组长度

这是用C计算数组长度的众所周知的代码:

sizeof(array)/sizeof(type)
Run Code Online (Sandbox Code Playgroud)

但我似乎无法找出作为函数参数传递的数组的长度:

#include <stdio.h>

int length(const char* array[]) {
  return sizeof(array)/sizeof(char*);
}

int main() {
  const char* friends[] = { "John", "Jack", "Jim" };
  printf("%d %d", sizeof(friends)/sizeof(char*), length(friends)); // 3 1
}
Run Code Online (Sandbox Code Playgroud)

我假设数组通过值复制到函数参数作为常量指针,并且对它的引用应解决此问题,但此声明无效:

int length(const char**& array);
Run Code Online (Sandbox Code Playgroud)

我发现将数组长度作为第二个参数传递为冗余信息,但为什么标准声明main如下:

int main(int argc, char** argv);
Run Code Online (Sandbox Code Playgroud)

请解释是否可以在函数参数中找出数组长度,如果是,那么为什么存在冗余main.


c pointers

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

如何在PHP中获取对象的受保护属性

我有一个对象有一些我想要获取和设置的受保护属性.对象看起来像

Fields_Form_Element_Location Object
(
[helper] => formText
[_allowEmpty:protected] => 1
[_autoInsertNotEmptyValidator:protected] => 1
[_belongsTo:protected] => 


[_description:protected] => 
[_disableLoadDefaultDecorators:protected] => 
[_errorMessages:protected] => Array
    (
    )

[_errors:protected] => Array
    (
    )
[_isErrorForced:protected] => 
[_label:protected] => Current City


[_value:protected] => 93399
[class] => field_container field_19 option_1 parent_1
)
Run Code Online (Sandbox Code Playgroud)

我想获得value该对象的属性.当我尝试$obj->_value$obj->value它产生错误.我搜索并找到了使用的解决方案PHP Reflection Class.它在我的本地工作但在服务器PHP版本是5.2.17因此我不能在那里使用此功能.那么任何解决方案如何获得这样的属性?

php protected object php-5.2

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

C++模板专业化语法

在C++ Primer Plus(2001,捷克语翻译)中,我发现了这些不同的模板特化语法:

功能模板

template <typename T> void foo(T);
Run Code Online (Sandbox Code Playgroud)

专业化语法

void foo(int param); // 1
void foo<int>(int param); // 2
template <> void foo<int>(int param); // 3
template <> void foo(int param); // 4
template void foo(int param); // 5
Run Code Online (Sandbox Code Playgroud)

谷歌搜索了一下,我发现只有3号例子.它们之间是否存在差异(通话,编译,使用)?其中一些是否已过时/弃用?为什么不使用No.1?

c++ template-specialization

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

现代浏览器中的鼠标滚轮事件

我想为mousewheel事件提供干净,漂亮的JavaScript,只支持最新版本的常见浏览器,而没有遗留代码的旧版本,没有任何JS框架.

鼠标轮事件在这里很好地解释.如何简化当前最新版本的浏览器?

我没有访问所有浏览器来测试它,所以caniuse.com对我很有帮助.唉,那里没有提到鼠标轮.

根据Derek的评论,我写了这个解决方案.它对所有浏览器都有效吗?

someObject.addEventListener("onwheel" in document ? "wheel" : "mousewheel", function(e) {
  e.wheel = e.deltaY ? -e.deltaY : e.wheelDelta/40;
  // custom code
});
Run Code Online (Sandbox Code Playgroud)

javascript mousewheel

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

重新分配用new分配的内存是否安全?

从什么是写在这里,new分配在自由存储,同时malloc采用和这两个术语往往意味着同样的事情.

根据此处的内容,realloc可以将内存块移动到新位置.如果免费存储和堆是两个不同的内存空间,它是否意味着任何问题呢?

具体来说,我想知道它是否安全使用

int* data = new int[3];
// ...
int* mydata = (int*)realloc(data,6*sizeof(int));
Run Code Online (Sandbox Code Playgroud)

如果没有,是否还有其他方式可以安全地realloc分配内存new?我可以分配新的区域和memcpy内容,但据我所知,realloc如果可能的话可以使用相同的区域.

c++ memory-management realloc

32
推荐指数
5
解决办法
7514
查看次数

C++中的Default与Implicit构造函数

这非常简单,但捷克语(我的母语)不区分隐式和默认,所以我对一些捷克语翻译感到困惑,隐式和默认构造函数或构造函数调用之间的区别是什么.

struct Test {
  Test(int n=0) { }
};
Run Code Online (Sandbox Code Playgroud)

你能用这些术语描述什么是:

  1. 测试t1;
  2. 测试t2();
  3. 试验t3 = 3;
  4. 试验t4(4);
  5. 试验t5 =试验(5);

c++ constructor

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

可以在Winforms TextBox上设置背景图像吗?

是否可以TextBox在C#中更改Windows窗体的背景图像?没有BackgroundImage财产.我应该Paint以某种方式覆盖该方法吗?

c# textbox background-image winforms

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

如何减小MinGW g ++编译器生成的可执行文件的大小?

我有一个简单的"Hello world"C++程序,在Win XP下由MinGW g ++编译器编译为500kB可执行文件.有人说这是由libstdc ++.dlliostream库和静态链接引起的.

使用-s链接器选项有点帮助(减小50%的大小),但我只满足于<10kB可执行文件.有没有办法如何使用MinGW编译器实现这一目标?便携性对我来说不是一个大问题.

是否可以使用动态链接将libstdc ++.dll与可执行文件一起复制?如果是这样,如何实现这一目标?


解决了:我使用的是MinGW 3.4.现在我更新到最新的MinGW 4.6,尺寸减少了90%到50kB,-s选项甚至减少到9kB,这已经足够了.无论如何 - 感谢大家的帮助.在这里你得到我的结果

使用iostream的C++ Hello World程序

MinGW | no options | -s option
------------------------------
3.4   | 500kB      | 286 kB
4.6   | 50kB       |   9 kB
Run Code Online (Sandbox Code Playgroud)

c++ optimization executable mingw

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

如何退出PHP代码块?

在PHP中,是否可以退出PHP代码块(即PHP标记)?

<?php
    if (!A) phpexit();
    print("1");
?>

<?php
    print("2");
?>
Run Code Online (Sandbox Code Playgroud)

所以,如果A是真的,那么结果是12,如果A是假,那么结果是2.

我知道你可以用if语句或其他东西来做这个,但我想知道是否还有一些特殊的PHP函数可以做到这一点.

html php code-design

17
推荐指数
5
解决办法
5031
查看次数