小编hel*_*lix的帖子

注释名称中的“ +”是否具有某些特殊含义?

我正在查看Checker Framework提供的中央maven存储库中的自定义批注jdk-8的.jar文件的字节码。

在那里,我注意到Object.classClass.class文件中存在一些无效的Java代码。当我在Eclipse中加载jar时,它是带有以下语法的注释:

@jdk.Profile+Annotation(value=(int) 1)
public class java.lang.Object {
Run Code Online (Sandbox Code Playgroud)

现在,据我所知,此注释名称是无效的Java。但是,我假设这可能对编译器有意义(类似于编译器分配给匿名类的名称)。我不确定是什么,也无法在网上搜索中找到任何有关它的信息。因此,查询。

任何帮助表示赞赏。

java java-8 checker-framework

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

python - 日志中遇到的值无效

我有以下表达式: log = np.sum(np.nan_to_num(-y*np.log(a+ 1e-7)-(1-y)*np.log(1-a+ 1e-7)))

它给了我以下警告:

RuntimeWarning: invalid value encountered in log
  log = np.sum(np.nan_to_num(-y*np.log(a+ 1e-7)-(1-y)*np.log(1-a+ 1e-7)))
Run Code Online (Sandbox Code Playgroud)

我不明白什么可能是无效值或为什么我得到它.任何和每一个帮助表示赞赏.

注意:这是一个交叉熵成本函数,我添加1e-7以避免在日志中有零.y&a是numpy数组并numpy导入为np.

python math numpy cross-entropy

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

c ++中字符串向量消耗的内存

我正在用c ++创建一个字符串向量.我需要的是这个向量以字节为单位消耗的总内存.

因为字符串是可变大小的,所以现在我遍历每个向量元素并找到它的长度然后在最后我将它乘以char的大小.我需要的是更清洁的解决方案.

vector<string> v;
//insertion of elements
int len=0;
for(int i=0;i<v.size();i++)
                    len+=v[i].length();
int memory=sizeof(char)*len;
Run Code Online (Sandbox Code Playgroud)

或者,找到字符串数组的内存消耗的解决方案也可以.让我们说吧

string a[SIZE]
Run Code Online (Sandbox Code Playgroud)

找到一个字节数?

c++ memory vector

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

从字符串向量中获取字符串的第一个字符

如何获取第一个字符或如何通过索引从字符串向量中的字符串获取字符,同时迭代该向量.这是我的代码:

vector<string>::iterator i=vec.begin();
    while(i!=vec.end()){
        if(i[0]==ch)
            cout<<"output";
    }
Run Code Online (Sandbox Code Playgroud)

它给出了错误:

不匹配'operator =='(操作数类型是'std :: basic_string'和'char')|

c++ string stl vector c++11

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

c++ - Boost ASIO 网络服务器/客户端

我已经为客户端和服务器编写了一个程序。该程序当前执行以下操作:

  1. 服务器侦听连接的端点
  2. 客户端连接到服务器
  3. 服务器在接受连接时发送消息
  4. 客户端收到消息

我正在异步执行此操作。但是,问题是他们只能发送/接收一条消息。之后,他们就终止了。下面是我的代码:

#include <iostream>
#include <vector>
#include<boost/asio.hpp>

std::vector<char> buff(256);

void SendHandler(boost::system::error_code ex){
    std::cout << " do something here" << std::endl;
}

void ReadHandler(boost::system::error_code ex){
    std::cout << " print the buffer data..." << std::endl;
    std::cout << buff.data() << std::endl;

}

void Server(){
    boost::asio::io_service service;
    using namespace boost::asio::ip;
    tcp::endpoint endpoint(tcp::v4(), 4000);
    tcp::acceptor acceptor(service, endpoint); 
    tcp::socket socket(service);
    std::cout << "[Server] Waiting for connection" << std::endl;


    acceptor.accept(socket);
    std::cout << "[Server] Accepted a connection from client" << std::endl;

    std::string msg = …
Run Code Online (Sandbox Code Playgroud)

c++ boost network-programming

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