小编dre*_*eta的帖子

CSS选择器"div p"和"div> p"之间有什么区别?

可能重复:
"div> p"和"div p"相同吗?

这是我用作CSS参考的页面,请注意我今天早上才开始学习HTML/CSS.

我对两个选择器感到困惑,引用了网站,"div p"选择器selects all <p> elements inside <div> elements和"div> p"选择器selects all <p> elements where the parent is a <div> element.

这两者有什么区别?如果可能的话,这两个选择器不可互换使用的示例将是有帮助的.

html css css-selectors

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

将字符串传递给函数是按值复制还是通过引用传递?

由于JavaScript中的字符串是基本类型,将字符串传递给函数是否会创建它的本地副本?我想知道这个,因为你不能在创建字符串后修改字符串,所以JavaScript VMs不会仅仅将字符串的地址传递给函数内部似乎是不合逻辑的.

如果有人要告诉我我不应该担心这个问题(与网络开发人员交谈时会发生这种情况),我正在研究HTML5游戏和垃圾收集是一个主要问题,所以我真的需要知道.

javascript

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

通过指向其基类的指针删除派生对象

我有两个类,base_class和derived_class以及以下代码:

base_class *ptr = new derived_class;
delete ptr;
Run Code Online (Sandbox Code Playgroud)

这段代码会产生内存泄漏吗?如果是这样,我该如何处理呢?

c++

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

互斥锁会锁定内存的哪一部分?(并行线程)

我在pthreads互斥锁上读到的所有文档都只说明互斥锁阻止多个线程访问共享内存,但是如何在程序中指定究竟是什么呢?它是程序中的所有全局变量,锁定和解锁函数之间访问的变量,还是......?我在pthreads上找到的所有内容,包括示例,都令人生气.

c++ multithreading pthreads

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

STL的矢量调整大小

我找不到这条信息.我正处理一个奇怪的情况,我在一个循环中,我可以在任何给定的时间获得随机信息.该信息必须存储在矢量中.现在每个帧我必须设置这个向量,以确保我不会占用空间(我正在使用索引将值写入向量中的随机点).

现在假设没有办法改变这段代码,我想知道,如果我发送的参数恰好是向量的大小,那么向量是否"忽略"resize()函数?我在哪里可以找到这些信息?

c++ stl vector

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

从现有代码中创建.dll

这是一个新手请求.我在寻找.dll创作的资料.特别是,我想用一个简单的3D引擎创建一个.dll,我已经了解了这个过程.我需要有关动态链接库的信息比维基百科页面更深入,它们是如何创建的,必要的,如何为"debug"和"release"创建不同的.dll文件,如何为它创建PDB文件以及如何创建一个头文件,允许从a,fe,C++程序中轻松使用该库.具有强大理论方面的材料(不是那么多,"如何在视觉工作室中创建动态链接库")会很棒.

请分享关于这个主题的好材料,我能在这里找到的是一些信息,并没有为我画画.

c++ dll

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

为旧版本的非IE浏览器编写兼容性代码

我想知道专业的HTML/CSS/JS开发人员是否担心与最新的Firefox,Chrome或Opera兼容?我对浏览器的体验是它们只是自动更新,并且没有像IE那样的版本系统,你可以获得与新操作系统版本相关的主要版本.

因此,人们担心他们的代码与较旧的Firefox版本兼容,或者人们只是假设如果有人使用他们的网站意味着他们已经连接到互联网,那么他们有非IE浏览器的最新版本,如果他们选择用一个?

javascript html5 web-applications cross-browser

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

表达式"变量,变量=值;"

我一直在浏览一些MFC代码,我遇到了这个表达式.它在OnInitDialog()函数中,看起来不像是MFC特有的.变量有一些名称,值为0.

int volatile something, somethingElse; //this was global

something, somethingElse = 0; //this was inside the function
Run Code Online (Sandbox Code Playgroud)

这在C++中是否有意义?我知道逗号运算符是如何工作的,尽管像这里的自由形式它应该是分离表达式.变量名也是表达式吗?这段代码是编译的,所以这是如何工作的?

c++ comma

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

流奇怪的行为

我遇到过ofstream的奇怪行为,对我来说最不奇怪.这是我的程序,我使用的是Visual Studio 2010 Express Edition.

int main () {

    std::ofstream file("file.txt");
    file << "something1";
    file.close();

    file.open("file.txt", std::ios::ate | std::ios::in );
    file << "something2";
    file.close();

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

这会产生正确的输出.

something1something2

现在,如果我用以下代码替换第9行,

file.open("file.txt", std::ios::ate);
Run Code Online (Sandbox Code Playgroud)

我得到这个输出.

something2

但是,如果我再次替换第9行,这次使用此代码,

file.open("file.txt", std::ios::ate | std::ios::in );
Run Code Online (Sandbox Code Playgroud)

我得到这个输出.

something1something2

现在,我想问题是,有人可以帮我解决这个问题吗?为什么最后一个解决方案有效,但中间解决方案没有.

编辑:纠正了主要功能.你每天都学到一些东西.

c++ file-io iostream

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

JavaScript中的原始包装行为

专业的Javascript for Web Developers一书中,我读到了在尝试访问原始对象的属性和方法时,JavaScript内部使用原始包装器.这是否意味着每次我尝试访问字符串原语上的length属性时,都会重新计算该值?我的直觉告诉我,因为字符串是固定的,所以它们的长度值存储在某处,只能由包装器访问,但我宁愿确定.

javascript ecma262

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

删除使用自定义新运算符分配的对象

我正在为STL编写一个基于堆栈的分配器.我们的想法是分配一大块内存,然后在构造对象时构建它,然后在需要时将其重置为零.例如,这可以用于存储游戏的级别信息或者用于为游戏循环的单次迭代创建的对象.当您加载一个级别构建堆栈时,当您需要加载一个新级别时,您只需将顶部指针重置为开头,不需要操作系统调用.

现在我的问题是标准分配器的工作方式,即deallocate()功能.在文章中,我可以读取

在默认分配器中,使用:: operator delete释放存储块.

这意味着通过使用该deallocate()函数,释放内存并调用析构函数.现在,对于我的分配器的purpouse,我可以使该deallocate()函数为空,因为我不打算为单个对象释放内存.

那么,问题是,STL容器如何使用allocator类来创建新对象?由于默认分配器使用newdelete,容器是否会调用construct()destroy()我应该让我的deallocate()功能也打电话给descrutor?

我想同样的问题适用于allocate()construct()方法.

c++ memory memory-management

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

Linux上的用户界面

对于Linux来说,我是一个完全新手,我在第三学期的操作系统类中触及了一些,但就是这样.我的操作系统交互仅限于使用WinAPI.我正在为我的游戏引擎编写低级系统,即上下文创建,文件处理,HID,线程等等.我希望能够在Windows和Linux上实现相同的功能. .

在寻找有关Linux接口系统的信息时,我能找到的是Qt等库的推荐.这是一个很棒的图书馆,我在Windows上使用过它,但是我并不像我在学习使用Linux的过程那样对阻力最小的路径感兴趣.由于没有像Linux AFAIK的Windows.h这样的东西,这让人感到畏惧.

你们可以试着指点我正确的方向吗?Linux用于窗口系统的本机(如果存在)库(或者只是创建OpenGL上下文的方式,但具有窗口焦点,相对鼠标坐标,窗口最小化等Windows功能),键盘/鼠标/等的输入.,文件i/o和线程?不必具体,能够在Google中输入内容并获得正确结果会很不错.

c++ linux window

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