小编Bla*_*sco的帖子

为什么需要在类外部初始化非常量静态变量?

我知道非常量静态变量需要在类定义之外进行初始化,但有没有理由呢?

class A {
    static int x = 0 // compile error;
    static int y;
};

int A::y = 0; // fine
Run Code Online (Sandbox Code Playgroud)

c++ static

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

传递 std::vector 作为指针引用

我有一个具有以下签名且无法更改的函数:

bool function(uint8_t*& data, uint32_t size)
Run Code Online (Sandbox Code Playgroud)

我想传递一个标准向量,我可以按如下方式执行:

std::vector<uint8_t> buffer;
buffer.reserve(10);
buffer.resize(10);

uint8_t* data = &buffer[0];
function(data, buffer.size()))
Run Code Online (Sandbox Code Playgroud)

有没有办法避免创建data指针?以下内容无法编译:

function(&buffer[0], buffer.size()))
Run Code Online (Sandbox Code Playgroud)

给出一个no matching function错误。

c++

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

私人会员的角色是什么?

#include<iostream>
class student
{
    private:
            int roll_no;
            int standard;
    public:
            void input();
            void display();
};
Run Code Online (Sandbox Code Playgroud)

我向老师询问了让一些班级成员私下和一些成员公开的重要性.他说,出于安全原因,数据成员通常是私有的.他说没有对象可以访问类中的私有东西,这就是为什么它们是安全的.

我的问题是:当我们开发软件时,我们将向用户分发可执行文件.用户将无法编辑代码.我们老师在谈什么类型的安全?当我创建了整个代码时,有人可以编辑它吗?有什么需要考虑安全性?

c++ security class

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

在shebang中使用“#!/usr/bin/env python”而不是仅仅调用“#!python”解释器有什么好处?

我了解启动 python 脚本之间的区别,例如:

#!/usr/bin/env python
Run Code Online (Sandbox Code Playgroud)

或者

#!/usr/bin/python
Run Code Online (Sandbox Code Playgroud)

据我所知,只是像我们在 shell 中那样执行 python,所以它在$PATH. 第二个不是固定路径,它的不便之处在于,在不同的系统中,python 解释器可能位于另一条路径中。

我的问题是,为什么我们需要env?为什么我们可以这样做:

#!python
Run Code Online (Sandbox Code Playgroud)

这在我的电脑上工作得很好吗?有理由更喜欢打电话env吗?

python shebang

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

标签 统计

c++ ×3

class ×1

python ×1

security ×1

shebang ×1

static ×1