小编ice*_*ime的帖子

使用boost :: algorithm :: split拆分字符串

我有以下代码.

using namespace std;
using namespace boost;
int main()
{  
 SystemConnect hndl;
 int ip1[15],ip2[15];
 string line;
 while (cout<<"LP>" && getline(cin,line) ) {
  if (line=="exit")
   break;
  if (line=="Connect 10.172.21.121 10.109.12.122"){
   string str;
      str="ConInit 10.172.21.121 10.109.12.122";
   vector<string> results;
   split(results,str,is_any_of(" "));
   for(vector<string>::const_iterator p=results.begin();p!=results.end();p++){
    cout<<*p<<endl;
   }
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

这是我得到的输出.

Connect
10.172.21.121
10.109.12.122
Run Code Online (Sandbox Code Playgroud)

我需要在ip2中将10.172.21.121存储在ip1和10.109.12.122中.我怎么做

谢谢

c++ boost

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

将函数签名从编译器语言转换为c ++

嘿伙计们,我需要列出链接器输出中列出的一些函数.我得到的语法如下:

int foo(int num,double dnum, Temp & temp) (in namespace "funcsns")
Run Code Online (Sandbox Code Playgroud)

变成:

.text._ZN7funcsns3fooEidRNS_4TempE
Run Code Online (Sandbox Code Playgroud)

(您可能从"未定义的符号"和其他一些打印函数名称的链接错误中知道它)

现在,我可以编写一个脚本,以某种方式将其变成可读的东西,但我想知道是否有一种聪明的方法.

请分享您的想法!
谢谢.

c++ linker g++

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

"模板函数的完全特化"的"多个定义..."错误


我有一个配置项目:

./main.cpp  
./type_traints/TypeTraints.cpp
./type_traints/TypeTraints.hpp
./type_traints/chapter_20.hpp
Run Code Online (Sandbox Code Playgroud)

./type_traints/CMakeLists.txt文件是:

 cmake_minimum_required (VERSION 2.8)
 add_library(chapter_20 TypeTraints.cpp)
Run Code Online (Sandbox Code Playgroud)

和./CMakeLists.txt如下:

cmake_minimum_required (VERSION 2.8)
project (mpl)

add_subdirectory(type_traints)
include_directories(type_traints)
link_directories(type_traints)

add_executable (mpl main.cpp)
target_link_libraries(mpl chapter_20)
Run Code Online (Sandbox Code Playgroud)

文件的相关部分(大多数包括省略)包括:
./ type_traints /chapter_20.hpp

#ifndef CHAPTER_20_GUARD
#define CHAPTER_20_GUARD
#include <TypeTraints.hpp>

void chapter_20() {
  test_23();
}   
#endif //CHAPTER_20_GUARD
Run Code Online (Sandbox Code Playgroud)

./type_traints/TypeTraints.hpp

#ifndef TYPE_TRAINTS_GUARD
#define TYPE_TRAINTS_GUARD
namespace details {

  template<class T> const char* class2name() {
    return "unknown";
  };

  template<> const char* class2name<int>() {
    return "int";
  };
}

template<class T>
class type_descriptor {
  friend std::ostream& operator << (std::ostream& stream, 
                                    const …
Run Code Online (Sandbox Code Playgroud)

c++ templates definition

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

C++:你能从静态方法返回局部变量的值吗?

如果我有这样的事情:

static const wchar_t* concatenate(const wchar_t* ws1, const wchar_t* ws2) {
    std::wstring s(ws1);
    s += std::wstring(ws2);
    return s.c_str();
}
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为's'的范围在静态块内,因此堆栈内容将被弹出,而'​​s'的内存地址不再有效,所以我的问题是我该怎么做?

谢谢

c++ static

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

如何评估re.sub中的替换部件?

我有一个字符串说“Alex 28”。现在,我想提取数字 28 并使用正则表达式将其加 2。

在 Perl 中,我可以这样得到它:

#!/usr/bin/perl
use strict;
use warnings;

my $str='Alex 28';
$str=~s/(\d+)/$1+2/e;
Run Code Online (Sandbox Code Playgroud)

为了在 Python 中实现这一点,我尝试了以下方法:

#!/usr/bin/python

import re

str = 'Alex 28'

match=re.sub(r'(\d+)',r'\g<1>',str)
Run Code Online (Sandbox Code Playgroud)

如何将 2 添加到\g<1>已获取的 ' ' 上?我尝试使用 int 函数,它不起作用。请帮忙。

版本:Python 2.7.3

python regex

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

如何检查字符串中的字符是否按字母顺序排列

我一直在尝试这些代码,但有一些错误.我只想知道第一个字符串是否按字母顺序排列.

def alp(s1):
    s2=sorted(s1)
    if s2 is s1:
        return True
    else:
        return False
Run Code Online (Sandbox Code Playgroud)

这总是打印False,当我说打印s1或s2时,它说"NameError:name's1'未定义"

python string

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

在g ++中,system()函数返回-1

我正在寻找system()C++程序返回-1 的原因和案例.我处于这样一种情况,它在一个不在另一个类中的类中工作正常.

c++ g++ system

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

标签 统计

c++ ×5

g++ ×2

python ×2

boost ×1

definition ×1

linker ×1

regex ×1

static ×1

string ×1

system ×1

templates ×1