小编Cha*_*nya的帖子

为什么非静态变量不能从静态上下文引用 - reg

可能重复:
无法从静态上下文引用非静态变量(java)

public class DemoJava {

    public class Hello {

        void fun()
        {
            System.out.println("This is static fun man!!");    
        }
    }

    public static void main(String[] args) {

        Hello hello = new Hello();
        hello.fun();
    }
}
Run Code Online (Sandbox Code Playgroud)

在这个例子中,它会给我一个错误,因为我试图从静态方法访问非静态类.精细.例如,如果我Hello在另一个文件中有相同的类,并且我做同样的事情,它不会给我一个错误.

即使在这种情况下,我们也试图从静态方法访问非静态类.但这并没有给出任何错误.为什么?

java class

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

输入缓冲如何在 C++ 中工作

这是一个代码片段。我对内部缓冲的工作方式感到困惑。

  while(true)
  {
      cout << "Enter a character: ";
      cin.ignore(3, '\n');
      ch = cin.get();  // ch is char type
      cout << "char: ch: " << ch << endl;
  }
Run Code Online (Sandbox Code Playgroud)

实际上cin.ignore(3, '\n')忽略前三个字符,然后获取下一个直接字符。到那一点就好了。因为,我把它保持在一个while循环中,我试图检查ignore()and的行为get()。例如,我检查的输出是

Enter a character: abcd
char: ch: d
Enter a character: efgh
char: ch: e
Enter a character: ijkl
char: ch: i
Enter a character: mnopq
char: ch: m
Enter a character: char: ch: q
Enter a character: 
Run Code Online (Sandbox Code Playgroud)

只是为了检查缓冲,我故意给了 4 个字符而不是 1 …

c++ inputstream input-buffer

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

在 C 中将所有元素设置为相同的值

注意:只有 C++ 有类似的帖子,我没有找到任何关于 C 的有用帖子。

我想设置具有相同值的元素数组。当然,这可以简单地使用 for 循环来实现。

但是,这会消耗很多时间。因为,在我的算法中,这个具有相同值的设置数组发生了很多次。有没有什么简单的方法可以在 C 中实现这一点。

c arrays

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

通过C++中的套接字发送图像

std::ifstream file(localPath.c_str(), std::ifstream::binary);

file.seekg(0, std::ifstream::beg);

while(file.tellg() != -1)
{
    char *p = new char[1024];

    bzero(p, 1024);
    file.read(p, 1024);

    printf("%ld\n", file.gcount());

    n = send(fd, p, strlen(p), 0);
    if (n < 0) {
        error("ERROR writing to socket");
    } else {
        printf("---------%d\n", n);
    }

    delete p;
}

file.close();
Run Code Online (Sandbox Code Playgroud)

实际上我试图发送的图像是png(大小:27892bytes)就读取而言,每个字节都被正确读取.但是,在将它们写入套接字时,只写入了几个字节.需要帮助.

提前致谢.:)

c++ file-io webserver

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

在C++中释放在std :: string中分配的内存

例如,我有字符串的静态声明

std::string s("test");
Run Code Online (Sandbox Code Playgroud)

将为字符串动态分配内存.当字符串s超出范围时,为字符串分配的内存将被释放?

的情况下 std::map

std::map <std::string, std::string> testMap;
Run Code Online (Sandbox Code Playgroud)

同样,如果这testMap也超出范围,std::string则调用析构函数并释放字符串的内存?

评论 ?提前致谢 :)

c++ memory

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

标签 统计

c++ ×3

arrays ×1

c ×1

class ×1

file-io ×1

input-buffer ×1

inputstream ×1

java ×1

memory ×1

webserver ×1